|
Laxkit
0.0.7.1
|
Data class for EllipseInterface. More...

Public Member Functions | |
| virtual void | usefocus (flatpoint f1, flatpoint f2, double c=-1) |
| const char * | whattype () |
| void | FindBBox () |
Public Member Functions inherited from LaxInterfaces::SomeData | |
| virtual void | touchContents () |
| virtual Laxkit::LaxImage * | GetPreview () |
| If usepreview==1 and preview, then return preview. | |
| virtual void | GeneratePreview (int w, int h) |
| Create a preview image with transparency for a cached screen preview. | |
| virtual int | renderToBuffer (unsigned char *buffer, int bufw, int bufh, int bufstride, int bufdepth, int bufchannels) |
| Render the object to a buffer. | |
| virtual const char * | Id () |
| virtual const char * | Id (const char *newid) |
| SomeData () | |
| SomeData (double nminx, double nmaxx, double nminy, double nmaxy) | |
| Constructor, setting the bounds. | |
| virtual flatpoint | BBoxPoint (double x, double y, bool transform_to_parent) |
| virtual flatpoint | ReferencePoint (int which, bool transform_to_parent) |
| virtual SomeData * | duplicate (SomeData *dup) |
| Duplicate *this. | |
| virtual int | pointin (flatpoint pp, int pin=1) |
| Return if pp transformed to data coords is within the bounds. | |
| virtual int | fitto (double *boxm, DoubleBBox *box, double alignx, double aligny, int whentoscale=2) |
| Fit this data to box. | |
| virtual SomeData * | GetParent () |
| virtual void | dump_out (FILE *f, int indent, int what, Laxkit::anObject *context) |
| virtual void | dump_in (FILE *f, int indent, Laxkit::anObject *context, LaxFiles::Attribute **Att=NULL) |
| Dump in an attribute, then call dump_in_atts(thatatt,0). | |
| virtual void | dump_in_atts (LaxFiles::Attribute *att, int flag, Laxkit::anObject *context) |
| Reverse of dump_out(). | |
| virtual LaxFiles::Attribute * | dump_out_atts (LaxFiles::Attribute *att, int what, Laxkit::anObject *savecontext) |
Public Member Functions inherited from Laxkit::anObject | |
| anObject () | |
| Set object_id=getUniqueNumber(). | |
| virtual | ~anObject () |
| Empty virtual destructor. | |
| virtual anObject * | duplicate (anObject *ref=NULL) |
| virtual int | inc_count () |
| Increment the data's count by 1. Returns count. | |
| virtual int | dec_count () |
| Decrement the count of the data, deleting if count is less than or equal to 0. | |
| virtual int | the_count () |
Public Member Functions inherited from Laxkit::Affine | |
| Affine (const double *m) | |
| If mm==NULL, set identity. | |
| Affine (const Affine &m) | |
| Affine (double xx, double xy, double yx, double yy, double tx, double ty) | |
| Affine & | operator= (Affine const &m) |
| Affine & | operator*= (Affine const &m) |
| Affine | operator* (Affine const m) |
| virtual void | set (Affine a) |
| virtual void | setIdentity () |
| virtual bool | isIdentity () |
| virtual void | setRotation (double angle) |
| virtual void | setScale (double sx, double sy) |
| virtual void | setBasis (flatpoint o, flatpoint x, flatpoint y) |
| virtual void | setBasics (double x, double y, double sx, double sy, double angle, double shear) |
| virtual void | getBasics (double *x, double *y, double *sx, double *sy, double *angle, double *shear) |
| virtual void | Translate (flatvector d) |
| virtual void | Rotate (double angle) |
| virtual void | Rotate (double angle, flatpoint around_point) |
| virtual void | RotatePointed (flatpoint anchor1, flatpoint anchor2, flatpoint newanchor2) |
| virtual void | RotateScale (flatpoint anchor1, flatpoint anchor2, flatpoint newanchor2) |
| Rotate and scale so that anchor1 stays fixed, but anchor2 is shifted to newanchor2. | |
| virtual void | Stretch (flatpoint anchor1, flatpoint anchor2, flatpoint newanchor2) |
| virtual void | AnchorShear (flatpoint anchor1, flatpoint anchor2, flatpoint anchor3, flatpoint newanchor3) |
| Transform so that anchor1 and 2 stay fixed, but anchor3 is shifted to newanchor3. | |
| virtual void | Scale (double s) |
| virtual void | Scale (flatpoint o, double s) |
| Scale around point o. | |
| virtual void | Scale (flatpoint o, double sx, double sy) |
| virtual void | Scale (flatpoint anchor1, flatpoint anchor2, flatpoint newanchor2) |
| Scale as if you move anchor2 to newanchor2, while anchor1 stays the same. | |
| virtual void | FlipH () |
| virtual void | FlipV () |
| virtual void | Flip (flatpoint f1, flatpoint f2) |
| Flip across the axis of f1 to f2. | |
| virtual void | Multiply (Affine &m) |
| this=this*m | |
| virtual void | PreMultiply (Affine &m) |
| this=m*this | |
| virtual Affine | Inversion () |
| Return a new matrix that is the inverse of this, if possible. | |
| virtual void | Invert () |
| Make this the inverse of whatever it is. | |
| virtual flatpoint | transformPoint (flatpoint p) |
| virtual flatpoint | transformPointInverse (flatpoint p) |
| virtual flatpoint | transformVector (flatpoint p) |
| Apply the transfrom, but ignore this's translation component. | |
| virtual const double * | m () const |
| virtual void | m (const double *mm) |
| virtual void | m (double xx, double xy, double yx, double yy, double tx, double ty) |
| virtual double | m (int c) |
| virtual void | m (int c, double v) |
| virtual void | Unshear (int preserve_x, int normalize) |
| Clear shearing and unequal scaling. Null vectors stay null vectors. | |
| virtual void | Normalize () |
| Make x and y both be unit vectors, but point in the same direction as before. | |
| virtual flatpoint | origin () |
| virtual void | origin (flatpoint o) |
| virtual flatpoint | xaxis () |
| virtual void | xaxis (flatpoint x) |
| virtual flatpoint | yaxis () |
| virtual void | yaxis (flatpoint y) |
Public Member Functions inherited from Laxkit::DoubleBBox | |
| DoubleBBox () | |
| Create empty invalid bbox (maxx<minx and maxy<miny). | |
| DoubleBBox (flatpoint p) | |
| Create box whose bounds are p. | |
| DoubleBBox (double mix, double max, double miy, double may) | |
| Create box whose bounds are as given. | |
| virtual void | clear () |
| Make box invalid: set minx=miny=0 and maxx=maxy=-1. | |
| virtual void | addtobounds (double x, double y) |
| virtual void | addtobounds (flatpoint p) |
| Expand bounds to contain p. Set the bounds to p if current bounds are invalid. | |
| virtual void | addtobounds (DoubleBBox *bbox) |
| Add the bbox to the bounds. Set the bounds if current bounds are invalid. | |
| virtual void | addtobounds (const double *m, DoubleBBox *bbox) |
| Add bbox to bounds, first transforming it by 6 element transform matrix m. | |
| virtual void | setbounds (DoubleBBox *bbox) |
| Just copy over the bounds. | |
| virtual void | setbounds (flatpoint *pts, int n) |
| Make this bbox be the bounds for the given n points. (does not add to previous bounds) | |
| virtual void | setbounds (double mix, double max, double miy, double may) |
| Set the bounds to the specified values. | |
| virtual int | validbounds () |
| Returns maxx>=minx && maxy>=miny. | |
| virtual int | intersect (double mix, double max, double miy, double may, int settointersection=0) |
| Intersect the given bounds with this's bounds. Return 1 for non-empty intersection. | |
| virtual int | intersect (DoubleBBox *bbox, int settointersection=0) |
| Just return intersect(bbox.minx,...,settointersection). | |
| virtual int | intersect (double *m, DoubleBBox *bbox, int touching, int settointersection) |
| Does the transformed box touch. **** incomplete implementation. | |
| virtual int | boxcontains (double x, double y) |
| Return whether the given point is contained within or on the bounds. | |
| virtual flatpoint | BBoxPoint (double x, double y) |
Public Attributes | |
| unsigned int | style |
| double | s |
| double | e |
| double | a |
| double | b |
| flatpoint | center |
| flatpoint | x |
| flatpoint | y |
| LineStyle | linestyle |
Public Attributes inherited from LaxInterfaces::SomeData | |
| Laxkit::LaxImage * | preview |
| A preview image potentially to be used to not have to rerender on each refresh. | |
| int | usepreview |
| Flag for whether to use SomeData::preview rather than rendering. | |
| std::time_t | previewtime |
| The time the preview was generated, if at all, as returned by time(). | |
| std::time_t | modtime |
| The time of last modification through a SomeData function. | |
| int | bboxstyle |
| flatpoint | centerpoint |
| unsigned int | flags |
| int | iid |
| Id of the interface that should handle this data. | |
| char * | nameid |
Public Attributes inherited from Laxkit::anObject | |
| int | suppress_debug |
| DeleteRefCountedFunc | deleteMe |
| Called when the count is decremented to 0. | |
| unsigned long | object_id |
| char * | object_idstr |
Public Attributes inherited from Laxkit::DoubleBBox | |
| double | minx |
| double | maxx |
| double | miny |
| double | maxy |
Data class for EllipseInterface.
This should be modified so that the center is always at the space origin, and the SomeData min/max/x/y bounds hold the major and minor axes.
Equation of an ellipse: 
s is the starting angle in radians. e is the ending angle in radians.