71 double Length() {
return m_segments->Length(); }
77 void ConvertToLines();
131 void Alloc(
size_t count ) { m_segments->reserve( count ); }
134 void Clear() { m_segments->clear(); }
137 bool IsEmpty()
const {
return m_segments->empty(); }
183 a2dBoundingBox DoGetUnTransformedBbox( a2dBboxFlags flags = a2dCANOBJ_BBOX_NON ) const;
187 #if wxART2D_USE_CVGIO
190 #endif //wxART2D_USE_CVGIO
wxPoint2DDouble a2dPoint2D
this to define if coordinate numbers are integer or doubles
a2dPATH_END_TYPE
defines the way a polyline with a contour width is ended.
bool IsEmpty() const
Returns true if the array is empty, false otherwise.
void Clear()
This function does the same as Empty() and additionally frees the memory allocated to the array...
class to map references to objects stored in XML, in order to make the connection later on...
double GetContourWidth() const
get the Contour width of the shape
size_t GetCount()
Return the number of segments.
Input and output handler for the XmlSer format.
virtual void SetPending(bool pending)
set this object pending for update
OVERLAP
Result of a a2dBoundingBox intersection or hittest.
int GetDataType()
GDSII compatible to sub identify this object.
The base class for all drawable objects in a a2dCanvasDocument.
virtual void DoLoad(wxObject *parent, a2dIOHandlerXmlSerIn &parser, a2dXmlSer_flag xmlparts)
load object specific CVG data
a2dCanvasObject is the base class for Canvas Objects.
a2dPATH_END_TYPE GetPathType()
get when m_contourwidth != 0 what is the end of the lines looks like.
virtual void DoRender(a2dIterC &ic, OVERLAP clipparent)
render derived object
virtual bool RestrictToObject(a2dIterC &ic, const a2dPoint2D &pointToSnapTo, a2dPoint2D &bestPointSofar, a2dSnapToWhatMask snapToWhat, double thresHoldWorld)
called from an a2dRestrictionEngine, to restrict vertexes, lines, object to this object.
virtual a2dCanvasObjectList * GetAsCanvasVpaths(bool transform=true) const
when implemented the object without its children, is converted to
Normal straight line segment in a2dVpath.
a2dPATH_END_TYPE m_pathtype
when m_contourwidth != 0 what is the end of the line looking like.
void SetContourWidth(double width)
virtual void DoSave(wxObject *parent, a2dIOHandlerXmlSerOut &out, a2dXmlSer_flag xmlparts, a2dObjectList *towrite)
write object specific CVGL data
double Length()
calculate Length
int m_datatype
GDSII compatible to sub identify this object.
Input and output handler for the XmlSer format.
void SetPathType(a2dPATH_END_TYPE pathtype)
Set when m_contourwidth != 0 what is the end of the lines should be.
wxUint32 a2dSnapToWhatMask
mask for a2dSnapToWhat flags
a2dVpathSegmentPtr Last() const
while iterating a a2dCanvasDocument, this holds the context.
Contains graphical drawing context specific classes. a2dDrawer2D and derived classes are used for dra...
void Alloc(size_t count)
Preallocates memory for a given number of array elements.
virtual bool EliminateMatrix()
reduce matrix to identity
double m_contourwidth
if != 0 the continues path parts are contoured at distance m_contourwidth/2
void Add(a2dVpathSegment *item)
Append a new segment, which is owned by this class now.
void SetDataType(int type)
GDSII compatible to sub identify this object.
The a2dBoundingBox class stores one a2dBoundingBox of a a2dCanvasObject.
a2dVpath * GetSegments()
modify point at index to x,y
a2dCanvasObject for a Vector Path
virtual a2dCanvasObjectList * GetAsPolygons(bool transform=true) const
convert to a list of polygons.
a2dVpathSegmentPtr Item(size_t index) const
A pointer class, that automatically calls SmrtPtrOwn/SmrtPtrRelease.
CloneOptions
options for cloning
a2dVpathSegmentPtr operator[](size_t index) const
get i'th segment
structure to give as parameter to member functions of a2dCanvasObject