18 #ifndef KIG_OBJECTS_CONIC_IMP_H
19 #define KIG_OBJECTS_CONIC_IMP_H
21 #include "curve_imp.h"
23 #include "../misc/conic-common.h"
49 static const ObjectImpType* stype();
53 void draw( KigPainter& p )
const;
54 bool contains(
const Coordinate& p,
int width,
const KigWidget& )
const;
55 bool inRect(
const Rect& r,
int width,
const KigWidget& )
const;
57 Rect surroundingRect()
const;
59 const uint numberOfProperties()
const;
60 const ObjectImpType* impRequirementForProperty( uint which )
const;
61 bool isPropertyDefinedOnOrThroughThisImp( uint which )
const;
62 const QCStringList properties()
const;
63 const QCStringList propertiesInternalNames()
const;
64 const char* iconForProperty( uint which )
const;
65 ObjectImp* property( uint which,
const KigDocument& w )
const;
67 double getParam(
const Coordinate& point,
const KigDocument& )
const;
68 const Coordinate getPoint(
double param,
const KigDocument& )
const;
81 virtual int conicType()
const;
85 virtual TQString conicTypeString()
const;
90 virtual TQString cartesianEquationString(
const KigDocument& w )
const;
96 virtual TQString polarEquationString(
const KigDocument& w )
const;
114 const ObjectImpType* type()
const;
115 void visit( ObjectImpVisitor* vtor )
const;
117 bool equals(
const ObjectImp& rhs )
const;
119 bool containsPoint(
const Coordinate& p,
const KigDocument& doc )
const;
120 bool internalContainsPoint(
const Coordinate& p,
double threshold )
const;
135 ConicImpCart* copy()
const;
152 ConicImpPolar* copy()
const;
virtual TQString polarEquationString(const KigDocument &w) const
A string containing the polar equation of the conic.
const ObjectType * type() const
Returns the lowermost ObjectType that this object is an instantiation of.
static const ObjectType * stype()
Returns the ObjectType representing the Conic type.
const ConicPolarData polarData() const
Return the polar representation of this conic.
bool containsPoint(const Coordinate &p, const KigDocument &doc) const
Return whether this Curve contains the given point.
ConicCart * copy() const
Returns a copy of this Object.
const ConicPolarData polarData() const
Return the polar representation of this conic.
This class represents a curve: something which is composed of points, like a line,...
Definition: curve_imp.h:27
This class represents an equation of a conic in the form .
Definition: conic-common.h:85
The Object class represents the behaviour of an object after it is calculated.
Definition: object_imp.h:218
Instances of this class represent a certain Object type.
Definition: object_imp.h:88
virtual TQString cartesianEquationString(const KigDocument &w) const
A string containing the cartesian equation of the conic.
An Object representing a conic.
Definition: conic_imp.h:38
An implementation of Conic to be used when only the cartesian equation of the conic is known.
Definition: conic_imp.h:127
const ConicCartesianData cartesianData() const
Return the cartesian representation of this conic.
virtual int conicType() const
Type of conic.
Object * transform(const Transformation &) const
Return this Object, transformed by the transformation t.
Cartesian Conic Data.
Definition: conic-common.h:37
virtual Coordinate focus1() const
Return the first focus of this conic.
virtual Coordinate focus2() const
Return the second focus of this conic.
virtual TQString conicTypeString() const
A string containing "Hyperbola", "Parabola" or "Ellipse".
An implementation of Conic to be used when only the cartesian equation of the conic is known.
Definition: conic_imp.h:145
virtual const ConicCartesianData cartesianData() const
Return the cartesian representation of this conic.
bool equals(const Object &rhs) const
Returns true if this Object is equal to rhs.
ConicPolar * copy() const
Returns a copy of this Object.
The Coordinate class is the basic class representing a 2D location by its x and y components.
Definition: coordinate.h:33
virtual const ConicPolarData polarData() const =0
Return the polar representation of this conic.
This file is part of the documentation for tdelibs .
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Feb 5 2025 06:12:02 by
doxygen 1.8.17 written by
Dimitri van Heesch, © 1997-2001