kig
polygon_type.cc
Go to the documentation of this file.
38 static const char triangle_constructstatement[] = I18N_NOOP( "Construct a triangle with this vertex" );
39 static const char triangle_constructstatement2[] = I18N_NOOP( "Select a point to be a vertex of the new triangle..." );
122 std::vector<ObjectCalcer*> TriangleB3PType::movableParents( const ObjectTypeCalcer& ourobj ) const
194 std::vector<ObjectCalcer*> PolygonBNPType::sortArgs( const std::vector<ObjectCalcer*>& args ) const
238 std::vector<ObjectCalcer*> PolygonBNPType::movableParents( const ObjectTypeCalcer& ourobj ) const
305 std::vector<ObjectCalcer*> OpenPolygonType::sortArgs( const std::vector<ObjectCalcer*>& args ) const
349 std::vector<ObjectCalcer*> OpenPolygonType::movableParents( const ObjectTypeCalcer& ourobj ) const
446 std::vector<ObjectCalcer*> PolygonBCVType::sortArgs( const std::vector<ObjectCalcer*>& args ) const
491 std::vector<ObjectCalcer*> PolygonBCVType::movableParents( const ObjectTypeCalcer& ourobj ) const
627 I18N_NOOP( "Select the polygonal curve of which you want the intersection with a line..." ), false },
630 I18N_NOOP( "Select the line of which you want the intersection with a polygonal curve..." ), false },
637 : PolygonLineIntersectionType( "OPolygonalLineIntersection", argsspecOPolygonalLineIntersection, 3 )
659 I18N_NOOP( "Select the polygonal curve of which you want the intersection with a line..." ), false },
662 I18N_NOOP( "Select the line of which you want the intersection with a polygonal curve..." ), false },
669 : PolygonLineIntersectionType( "CPolygonalLineIntersection", argsspecCPolygonalLineIntersection, 3 )
821 return polygonlineintersection ( ppoints, a, b, true, true, true, false, t1, t2, intersectionside );
829 I18N_NOOP( "Select the polygon of which you want the intersection with another polygon..." ), false },
851 ObjectImp* PolygonPolygonIntersectionType::calc( const Args& parents, const KigDocument& ) const
1003 const std::vector<Coordinate> ppoints = static_cast<const FilledPolygonImp*>( parents[0] )->points();
1046 const std::vector<Coordinate> ppoints = static_cast<const FilledPolygonImp*>( parents[0] )->points();
1091 const std::vector<Coordinate> ppoints = static_cast<const AbstractPolygonImp*>( parents[0] )->points();
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:1100
static const CPolygonalLineIntersectionType * instance()
Definition: polygon_type.cc:677
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:157
~PolygonLineIntersectionType()
Definition: polygon_type.cc:528
static const ArgsParser::spec argsspecConvexHull[]
Definition: polygon_type.cc:1064
Instances of this class represent a certain ObjectImp type.
Definition: object_imp.h:95
bool inherits(const ObjectImpType *t) const
Returns true if this ObjectImp inherits the ObjectImp type represented by t.
Definition: object_imp.cc:279
void move(ObjectTypeCalcer &o, const Coordinate &to, const KigDocument &d) const
Definition: polygon_type.cc:219
void move(ObjectTypeCalcer &o, const Coordinate &to, const KigDocument &d) const
Definition: polygon_type.cc:330
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:384
KIG_INSTANTIATE_OBJECT_TYPE_INSTANCE(SegmentAxisType)
This is a convenience subclass of ObjectType that a type should inherit from if its parents can be sp...
Definition: object_type.h:113
int polygonlineintersection(const std::vector< Coordinate > &ppoints, const Coordinate a, const Coordinate b, bool boundleft, bool boundright, bool inside, bool openpolygon, double &t1, double &t2, std::vector< Coordinate >::const_iterator &intersectionside)
Definition: polygon_type.cc:712
An ObjectImp class that is the base of the line-like ObjectImp's: SegmentImp, LineImp and RayImp...
Definition: line_imp.h:31
bool isDefinedOnOrThrough(const ObjectImp *o, const Args &parents) const
Supposing that parents would be given as parents to this type's calc function, this function returns ...
Definition: polygon_type.cc:189
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:999
Definition: polygon_type.h:190
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:538
bool canMove(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:456
static const ObjectImpType * stype()
Returns the ObjectImpType representing the RayImp type.
Definition: line_imp.cc:562
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:65
bool canMove(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:86
const Coordinate moveReferencePoint(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:482
Definition: polygon_type.h:158
Definition: polygon_type.h:148
const Coordinate & coordinate() const
Get the coordinate of this PointImp.
Definition: point_imp.h:50
static const ArgsParser::spec argsspecOPolygonalLineIntersection[]
Definition: polygon_type.cc:624
bool isFreelyTranslatable(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:320
static const ObjectImpType * stype()
Returns the ObjectImpType representing the IntImp type.
Definition: bogus_imp.cc:278
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:851
static const ArgsParser::spec argsspecCPolygonalLineIntersection[]
Definition: polygon_type.cc:656
This is an ObjectCalcer that uses one of the various ObjectType's to calculate its ObjectImp...
Definition: object_calcer.h:183
const std::vector< Coordinate > points() const
Returns the vector with polygon points.
Definition: polygon_imp.cc:571
std::vector< ObjectCalcer * > sortArgs(const std::vector< ObjectCalcer * > &args) const
Definition: polygon_type.cc:194
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:425
bool isFreelyTranslatable(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:91
Definition: polygon_type.h:168
The Coordinate class is the basic class representing a 2D location by its x and y components...
Definition: coordinate.h:33
static const PolygonPolygonIntersectionType * instance()
Definition: polygon_type.cc:845
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:1057
static const ArgsParser::spec argsspecPolygonLineIntersection[]
Definition: polygon_type.cc:505
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:1087
const ObjectImpType * impRequirement(const ObjectImp *o, const Args &parents) const
Supposing that parents would be given as parents to this type's calc function, this function returns ...
Definition: polygon_type.cc:295
std::vector< ObjectCalcer * > movableParents(const ObjectTypeCalcer &ourobj) const
Definition: polygon_type.cc:122
void move(ObjectTypeCalcer &o, const Coordinate &to, const KigDocument &d) const
Definition: polygon_type.cc:468
static const ObjectImpType * stype()
Returns the ObjectImpType representing the PolygonImp type.
Definition: polygon_imp.cc:651
static const PolygonLineIntersectionType * instance()
Definition: polygon_type.cc:532
std::vector< ObjectCalcer * > movableParents(const ObjectTypeCalcer &ourobj) const
Definition: polygon_type.cc:238
std::vector< ObjectCalcer * > sortArgs(const std::vector< ObjectCalcer * > &args) const
Definition: polygon_type.cc:305
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:968
static const OPolygonalLineIntersectionType * instance()
Definition: polygon_type.cc:645
const ObjectImpType * impRequirement(const ObjectImp *o, const Args &parents) const
Supposing that parents would be given as parents to this type's calc function, this function returns ...
Definition: polygon_type.cc:430
bool checkArgs(const std::vector< ObjectCalcer * > &os) const
Definition: argsparser.cpp:222
static const ObjectImpType * stype()
Returns the ObjectImpType representing the SegmentImp type.
Definition: line_imp.cc:545
const ObjectImpType * impRequirement(const ObjectImp *o, const Args &parents) const
Supposing that parents would be given as parents to this type's calc function, this function returns ...
Definition: polygon_type.cc:184
static const char triangle_constructstatement2[]
Definition: polygon_type.cc:39
Definition: argsparser.h:113
bool isDefinedOnOrThrough(const ObjectImp *o, const Args &parents) const
Supposing that parents would be given as parents to this type's calc function, this function returns ...
Definition: polygon_type.cc:441
The ObjectType class is a thing that represents the "behaviour" for a certain type.
Definition: object_type.h:32
Definition: polygon_type.h:179
static const struct ArgsParser::spec argsspecTriangleB3P[]
Definition: polygon_type.cc:41
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:1042
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:179
std::vector< Coordinate > computeConvexHull(const std::vector< Coordinate > &points)
Definition: polygon_imp.cc:990
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:651
static const ArgsParser::spec argsspecPolygonPolygonIntersection[]
Definition: polygon_type.cc:826
void move(ObjectTypeCalcer &o, const Coordinate &to, const KigDocument &d) const
Definition: polygon_type.cc:99
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:683
const Coordinate moveReferencePoint(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:231
std::vector< ObjectCalcer * > movableParents(const ObjectTypeCalcer &ourobj) const
Definition: polygon_type.cc:349
static const ObjectImpType * stype()
Returns the ObjectImpType representing PointImp's.
Definition: point_imp.cc:159
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:273
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:81
Definition: polygon_type.h:201
KigDocument is the class holding the real data in a Kig document.
Definition: kig_document.h:36
Definition: polygon_type.h:133
static const ArgsParser::spec argsspecPolygonSide[]
Definition: polygon_type.cc:1018
static const ArgsParser::spec argsspecPolygonVertex[]
Definition: polygon_type.cc:975
bool canMove(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:315
static const ObjectImpType * stype()
Returns the ObjectImpType representing the AbstractLineImp type.
Definition: line_imp.cc:520
std::vector< ObjectCalcer * > parents() const
Returns the parent ObjectCalcer's of this ObjectCalcer.
Definition: object_calcer.cc:105
std::vector< ObjectCalcer * > movableParents(const ObjectTypeCalcer &ourobj) const
Definition: polygon_type.cc:491
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:1011
bool isDefinedOnOrThrough(const ObjectImp *o, const Args &parents) const
Supposing that parents would be given as parents to this type's calc function, this function returns ...
Definition: polygon_type.cc:300
const ObjectImpType * resultId() const
returns the ObjectImp id of the ObjectImp's produced by this ObjectType.
Definition: polygon_type.cc:290
The ObjectImp class represents the behaviour of an object after it is calculated. ...
Definition: object_imp.h:226
const Coordinate moveReferencePoint(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:342
const Coordinate moveReferencePoint(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:115
static const char triangle_constructstatement[]
Definition: polygon_type.cc:38
bool isFreelyTranslatable(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:461
bool isFreelyTranslatable(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:209
ObjectImp * calc(const Args &parents, const KigDocument &) const
Definition: polygon_type.cc:561
static const PolygonVertexType * instance()
Definition: polygon_type.cc:993
std::vector< ObjectCalcer * > sortArgs(const std::vector< ObjectCalcer * > &args) const
Definition: polygon_type.cc:446
bool canMove(const ObjectTypeCalcer &o) const
Definition: polygon_type.cc:204
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:12:05 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:12:05 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.