a2dEndsEllipticChord Class Reference
[a2dCanvasObject related objects]

a2dEndsEllipticChord with begin and/or end object. More...

#include <canprim.h>

Inheritance diagram for a2dEndsEllipticChord:

Inheritance graph
[legend]
Collaboration diagram for a2dEndsEllipticChord:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 a2dEndsEllipticChord ()
 constructor
 a2dEndsEllipticChord (double xc, double yc, double width, double height, double start, double end)
 constructor
 a2dEndsEllipticChord (const a2dEndsEllipticChord &ori, CloneOptions options)
 constructor using a a2dEndsEllipticChord as input
 ~a2dEndsEllipticChord ()
 destructor
virtual a2dObjectClone (CloneOptions options) const
 This is here so that this class cannot be used directly.
void SetBeginObj (a2dCanvasObject *begin)
 set object to draw as begin point
a2dCanvasObjectGetBeginObj ()
 return begin object
void SetEndObj (a2dCanvasObject *endob)
 set object to draw as end point
a2dCanvasObjectGetEndObj ()
 return end object
void SetEndScaleX (double xs)
 Scale begin and end object with this factor in X.
double GetEndScaleX ()
 see SetEndScaleX()
void SetEndScaleY (double ys)
 Scale begin and end object with this factor in Y.
double GetEndScaleY ()
 see SetEndScaleY()
void DoWalker (wxObject *parent, a2dWalkerIOHandler &handler)
 iterate over this object and its children
virtual void DoSave (wxObject *parent, a2dIOHandlerXmlSerOut &out, a2dXmlSer_flag xmlparts, a2dObjectList *towrite)
 write object specific CVGL data
void DoLoad (wxObject *parent, a2dIOHandlerXmlSerIn &parser, a2dXmlSer_flag xmlparts)
 load object specific CVG data

Protected Member Functions

void DoRender (a2dIterC &ic, OVERLAP clipparent)
 render derived object
bool DoIsHitWorld (a2dIterC &ic, a2dHitEvent &hitEvent)
 Does hit test on the object (exclusif child objects).
a2dBoundingBox DoGetUnTransformedBbox (a2dBboxFlags flags=a2dCANOBJ_BBOX_NON) const
bool DoUpdate (UpdateMode mode, const a2dBoundingBox &childbox, const a2dBoundingBox &clipbox, const a2dBoundingBox &propbox)
 Update derived Object specific things ( mainly boundingbox).
a2dAffineMatrix GetBeginTransform () const
 Get the coordinate transform for the begin object.
a2dAffineMatrix GetEndTransform () const
 Get the coordinate transform for the end object.

Protected Attributes

a2dCanvasObjectPtr m_beginobj
 object drawn at begin point
a2dCanvasObjectPtr m_endobj
 object drawn at end point
double m_xscale
 scale begin and end object with this factor in X
double m_yscale
 scale begin and end object with this factor in Y


Detailed Description

a2dEndsEllipticChord with begin and/or end object.

Definition at line 2013 of file canprim.h.


Constructor & Destructor Documentation

a2dEndsEllipticChord::a2dEndsEllipticChord ( double  xc,
double  yc,
double  width,
double  height,
double  start,
double  end 
)

constructor

Parameters:
xc x cord start
yc y cord start
width width of cord
height height of cord
start start angle
end end angle

Definition at line 6119 of file canprim.cpp.


Member Function Documentation

void a2dEndsEllipticChord::SetEndScaleX ( double  xs  )  [inline]

Scale begin and end object with this factor in X.

Remarks:
As side-effect this object is set pending for redraw

Definition at line 2056 of file canprim.h.

void a2dEndsEllipticChord::SetEndScaleY ( double  ys  )  [inline]

Scale begin and end object with this factor in Y.

Remarks:
As side-effect this object is set pending for redraw

Definition at line 2065 of file canprim.h.

void a2dEndsEllipticChord::DoWalker ( wxObject *  parent,
a2dWalkerIOHandler handler 
) [virtual]

iterate over this object and its children

This function allows you to extend the functionality of all a2dCanvasObject classes in a a2dCanvasDocument, without adding extra members to these objects.

Default functions are called on the a2dWalkerIOHandler, which redirect the calls to other functions based on this object its classname. On can register classes to a2dWalkerIOHandler or derived classes. This way for each unique object in the document there can be a function in a2dWalkerIOHandler.

Returns:
false if some object did not have a function attached via a2dWalkerIOHandler.
See a2dWalkerIOHandler for more.

Reimplemented from a2dCanvasObject.

Definition at line 6241 of file canprim.cpp.

void a2dEndsEllipticChord::DoLoad ( wxObject *  parent,
a2dIOHandlerXmlSerIn parser,
a2dXmlSer_flag  xmlparts 
) [virtual]

load object specific CVG data

todo ignore until this down here is fully converted.

Reimplemented from a2dEllipticArc.

Definition at line 6292 of file canprim.cpp.

void a2dEndsEllipticChord::DoRender ( a2dIterC ic,
OVERLAP  clipparent 
) [protected, virtual]

render derived object

if the object has sub objects (apart from the childobject which are handled here), those subobject most rendered by iterating on layer when needed/wanted, simular to child objects. We do not iterate here, since that is only needed if indeed there or subobjects. This will be know in a "wxDerivedCanvasObject DoRender".

SO parent objects that call this function, must:

  • 1- clip object against area to redraw.
  • 2- iterate on layers when needed.
A a2dCanvasObject is rendered as a + (plus sign) when there or no children.

Reimplemented from a2dEllipticArc.

Definition at line 6212 of file canprim.cpp.

bool a2dEndsEllipticChord::DoIsHitWorld ( a2dIterC ic,
a2dHitEvent hitEvent 
) [protected, virtual]

Does hit test on the object (exclusif child objects).

DoIsHitWorld() should return the way the object is hit by filling a2dHitEvent::m_how with the correct info.

Parameters:
ic iterative context ( e.g. current transform WITH the local transform applied )
hitEvent stores hit information
Returns:
true if hit

Reimplemented from a2dEllipticArc.

Definition at line 6325 of file canprim.cpp.

bool a2dEndsEllipticChord::DoUpdate ( UpdateMode  mode,
const a2dBoundingBox childbox,
const a2dBoundingBox clipbox,
const a2dBoundingBox propbox 
) [protected, virtual]

Update derived Object specific things ( mainly boundingbox).

Calculates the boundingbox of the object (exclusif base class child objects but with other nested objects).

Parameters:
mode way to update the objects
childbox size of children boundingbox
clipbox clip to this
propbox size of properties boundingbox
Remarks:
in a derived class this function can also be used to update object specific cache data.

force may or may not have direct influence on the object itself, if this function is called directly for some reason (e.g from derived objects), you must invalidate the boudingbox yourself. GetDrawerBox()->SetValid( false );

Reimplemented from a2dEllipticArc.

Definition at line 6190 of file canprim.cpp.


The documentation for this class was generated from the following files:
a2dEndsEllipticChord Class Reference -- Tue Aug 31 18:26:30 2010 -- 31 Aug 2010 -- 1.5.5 -- wxArt2D -- . -- Main Page Reference Documentation