20 #include <config-kig.h>
27 #include "../objects/angle_type.h"
28 #include "../objects/arc_type.h"
29 #include "../objects/circle_type.h"
30 #include "../objects/conic_types.h"
31 #include "../objects/cubic_type.h"
32 #include "../objects/intersection_types.h"
33 #include "../objects/inversion_type.h"
34 #include "../objects/line_imp.h"
35 #include "../objects/line_type.h"
36 #include "../objects/object_imp.h"
37 #include "../objects/other_imp.h"
38 #include "../objects/other_type.h"
39 #include "../objects/point_type.h"
40 #include "../objects/tests_type.h"
41 #include "../objects/transform_types.h"
42 #include "../objects/vector_type.h"
43 #include "../objects/polygon_type.h"
44 #include "../objects/bezier_type.h"
50 static bool done =
false;
60 I18N_NOOP(
"Point by Numeric Labels" ),
61 I18N_NOOP(
"A point whose coordinates are given by two numeric labels" ),
69 I18N_NOOP(
"A segment constructed from its start and end point" ),
77 I18N_NOOP(
"The perpendicular line through a given segment's mid point." ),
85 I18N_NOOP(
"A line constructed through two points"),
"line" );
92 I18N_NOOP(
"A half-line by its start point, and another point somewhere on it." ),
100 I18N_NOOP(
"A line constructed through a point, perpendicular to another line or segment." ),
108 I18N_NOOP(
"A line constructed through a point, and parallel to another line or segment" ),
116 I18N_NOOP(
"A circle constructed by its center and a point that pertains to it" ),
123 I18N_NOOP(
"A circle constructed through three points" ),
130 I18N_NOOP(
"A circle defined by its center and the length of the radius" ),
145 I18N_NOOP(
"Construct Bisector of This Angle" ),
146 I18N_NOOP(
"Select the angle you want to construct the bisector of..." ),
147 I18N_NOOP(
"Angle Bisector" ),
148 I18N_NOOP(
"The bisector of an angle" ),
156 I18N_NOOP(
"A conic constructed through five points" ),
163 I18N_NOOP(
"Hyperbola by Asymptotes && Point" ),
164 I18N_NOOP(
"A hyperbola with given asymptotes through a point" ),
171 I18N_NOOP(
"Ellipse by Focuses && Point" ),
172 I18N_NOOP(
"An ellipse constructed by its focuses and a point that pertains to it" ),
179 I18N_NOOP(
"Hyperbola by Focuses && Point" ),
180 I18N_NOOP(
"A hyperbola constructed by its focuses and a point that pertains to it" ),
187 I18N_NOOP(
"Conic by Directrix, Focus && Point" ),
188 I18N_NOOP(
"A conic with given directrix and focus, through a point" ),
195 I18N_NOOP(
"Vertical Parabola by Three Points" ),
196 I18N_NOOP(
"A vertical parabola constructed through three points" ),
203 I18N_NOOP(
"Cubic Curve by Nine Points" ),
204 I18N_NOOP(
"A cubic curve constructed through nine points" ),
211 I18N_NOOP(
"Polar Point of a Line" ),
212 I18N_NOOP(
"The polar point of a line with respect to a conic." ),
219 I18N_NOOP(
"Polar Line of a Point" ),
220 I18N_NOOP(
"The polar line of a point with respect to a conic." ),
227 I18N_NOOP(
"Cubic Curve with Node by Six Points" ),
228 I18N_NOOP(
"A cubic curve with a nodal point at the origin through six points" ),
235 I18N_NOOP(
"Cubic Curve with Cusp by Four Points" ),
236 I18N_NOOP(
"A cubic curve with a horizontal cusp at the origin through four points" ),
243 I18N_NOOP(
"Cubic Function by Four Points" ),
244 I18N_NOOP(
"A cubic function through four points" ),
245 "verticalcubicb4p" );
251 I18N_NOOP(
"Directrix of a Conic" ),
252 I18N_NOOP(
"The directrix line of a conic." ),
259 I18N_NOOP(
"Angle by Three Points" ),
260 I18N_NOOP(
"An angle defined by three points" ),
267 I18N_NOOP(
"Equilateral Hyperbola by Four Points" ),
268 I18N_NOOP(
"An equilateral hyperbola constructed through four points" ),
269 "equilateralhyperbolab4p" );
286 "",
"",
"",
"",
"mid-point" );
291 I18N_NOOP(
"Mid Point" ),
292 I18N_NOOP(
"The midpoint of a segment or two other points" ),
301 I18N_NOOP(
"Vector" ),
302 I18N_NOOP(
"Construct a vector from two given points." ),
309 I18N_NOOP(
"Vector Sum" ),
310 I18N_NOOP(
"Construct the vector sum of two vectors." ),
317 I18N_NOOP(
"Line by Vector" ),
318 I18N_NOOP(
"Construct the line by a given vector though a given point." ),
325 I18N_NOOP(
"Half-Line by Vector" ),
326 I18N_NOOP(
"Construct the half-line by a given vector starting at given point." ),
327 "halflinebyvector" );
333 I18N_NOOP(
"Arc by Three Points" ),
334 I18N_NOOP(
"Construct an arc through three points." ),
341 I18N_NOOP(
"Conic Arc by Center and Three Points" ),
342 I18N_NOOP(
"Construct a conic arc with given center through three points." ),
349 I18N_NOOP(
"Conic Arc by Five Points" ),
350 I18N_NOOP(
"Construct a conic arc through five points." ),
357 I18N_NOOP(
"Arc by Center, Angle && Point" ),
358 I18N_NOOP(
"Construct an arc by its center and a given angle, "
359 "starting at a given point" ),
366 I18N_NOOP(
"Parabola by Directrix && Focus" ),
367 I18N_NOOP(
"A parabola defined by its directrix and focus" ),
387 I18N_NOOP(
"Translate" ),
388 I18N_NOOP(
"The translation of an object by a vector" ),
395 I18N_NOOP(
"Reflect in Point" ),
396 I18N_NOOP(
"An object reflected in a point" ),
403 I18N_NOOP(
"Reflect in Line" ),
404 I18N_NOOP(
"An object reflected in a line" ),
411 I18N_NOOP(
"Rotate" ),
412 I18N_NOOP(
"An object rotated by an angle around a point" ),
419 I18N_NOOP(
"Scale" ),
420 I18N_NOOP(
"Scale an object over a point, by the ratio given by the length of a segment" ),
427 I18N_NOOP(
"Scale over Line" ),
428 I18N_NOOP(
"An object scaled over a line, by the ratio given by the length of a segment" ),
435 I18N_NOOP(
"Scale (ratio given by two segments)" ),
436 I18N_NOOP(
"Scale an object over a point, by the ratio given by the length of two segments" ),
443 I18N_NOOP(
"Scale over Line (ratio given by two segments)" ),
444 I18N_NOOP(
"An object scaled over a line, by the ratio given by the length of two segments" ),
451 I18N_NOOP(
"Apply Similitude" ),
452 I18N_NOOP(
"Apply a similitude to an object (the sequence of a scaling and rotation around a center)" ),
459 I18N_NOOP(
"Harmonic Homology" ),
460 I18N_NOOP(
"The harmonic homology with a given center and a given axis (this is a projective transformation)" ),
461 "harmonichomology" );
475 I18N_NOOP(
"Draw Projective Shadow" ),
476 I18N_NOOP(
"The shadow of an object with a given light source and projection plane (indicated by a line)" ),
491 I18N_NOOP(
"Asymptotes of a Hyperbola" ),
492 I18N_NOOP(
"The two asymptotes of a hyperbola." ),
493 "conicasymptotes", -1, 1 );
505 I18N_NOOP(
"Triangle by Its Vertices" ),
506 I18N_NOOP(
"Construct a triangle given its three vertices." ),
533 I18N_NOOP(
"A polygon that corresponds to the convex hull of another polygon" ),
544 I18N_NOOP(
"Bézier Quadratic by its Control Points" ),
545 I18N_NOOP(
"Construct a Bézier quadratic given its three control points." ),
552 I18N_NOOP(
"Bézier Cubic by its Control Points" ),
553 I18N_NOOP(
"Construct a Bézier cubic given its four control points." ),
564 I18N_NOOP(
"Rational Bézier Quadratic by its Control Points" ),
565 I18N_NOOP(
"Construct a Rational Bézier quadratic given its three control points." ),
572 I18N_NOOP(
"Rational Bézier Cubic by its Control Points" ),
573 I18N_NOOP(
"Construct a Rational Bézier cubic given its four control points." ),
592 I18N_NOOP(
"Parallel Test" ),
593 I18N_NOOP(
"Test whether two given lines are parallel" ),
600 I18N_NOOP(
"Orthogonal Test" ),
601 I18N_NOOP(
"Test whether two given lines are orthogonal" ),
608 I18N_NOOP(
"Collinear Test" ),
609 I18N_NOOP(
"Test whether three given points are collinear" ),
616 I18N_NOOP(
"Contains Test" ),
617 I18N_NOOP(
"Test whether a given curve contains a given point" ),
624 I18N_NOOP(
"In Polygon Test" ),
625 I18N_NOOP(
"Test whether a given polygon contains a given point" ),
632 I18N_NOOP(
"Convex Polygon Test" ),
633 I18N_NOOP(
"Test whether a given polygon is convex" ),
640 I18N_NOOP(
"Existence Test" ),
641 I18N_NOOP(
"Test whether a given object is constructible" ),
648 I18N_NOOP(
"Distance Test" ),
649 I18N_NOOP(
"Test whether a given point have the same distance from a given point "
650 "and from another given point" ),
657 I18N_NOOP(
"Vector Equality Test" ),
658 I18N_NOOP(
"Test whether two vectors are equal" ),
678 I18N_NOOP(
"Point Projection" ),
679 I18N_NOOP(
"Project a point on a line" ),
704 #ifdef KIG_ENABLE_PYTHON_SCRIPTING
705 #include "../scripting/script-common.h"
706 actions->
add(
new NewScriptAction(
707 I18N_NOOP(
"Python Script" ),
708 I18N_NOOP(
"Construct a new Python script." ),
709 "objects_new_script_python",
714 actions->
add(
new TestAction(
"test_stuff" ) );
This class is a collection of some other ObjectConstructors, that makes them appear to the user as a ...
static const InPolygonTestType * instance()
List of GUIActions for the parts to show.
static const CastShadowType * instance()
static const ArcBTPType * instance()
static const ScalingOverLineType * instance()
static const ConicArcB5PType * instance()
static const ExistenceTestType * instance()
static const CubicCuspB4PType * instance()
static const PointReflectionType * instance()
static const ConicDirectrixType * instance()
A standard implementation of StandardConstructorBase for simple types.
static const AreCollinearType * instance()
static const RotationType * instance()
static const TranslatedType * instance()
static const ScalingOverCenter2Type * instance()
static LinePerpendLPType * instance()
static const AreOrthogonalType * instance()
static const ParabolaBDPType * instance()
static const BezierQuadricType * instance()
static const AngleType * instance()
static const ConvexPolygonTestType * instance()
static const CubicB9PType * instance()
The list of object constructors for use in various places, e.g.
static const CircleBPRType * instance()
static const ConicBAAPType * instance()
static const RayABType * instance()
static const ContainsTestType * instance()
static const SimilitudeType * instance()
static const VerticalCubicB4PType * instance()
void add(ObjectConstructor *a)
static const VectorEqualityTestType * instance()
static const ConicArcBCTPType * instance()
This class represents a way to construct a set of objects from a set of other objects.
static const ConvexHullType * instance()
static const EllipseBFFPType * instance()
static const TriangleB3PType * instance()
static LineParallelLPType * instance()
static const VectorType * instance()
static const ConicAsymptoteType * instance()
static const SegmentAxisType * instance()
static const BezierCubicType * instance()
static const ConicPolarLineType * instance()
static const ConicBDFPType * instance()
static const ObjectImpType * stype()
Returns the ObjectImpType representing the SegmentImp type.
static ObjectConstructorList * instance()
static const CircleBCPType * instance()
static const ConicPolarPointType * instance()
static const CircleBTPType * instance()
static const SameDistanceType * instance()
static const ParabolaBTPType * instance()
static const ScalingOverCenterType * instance()
static const ArcBCPAType * instance()
static const VectorSumType * instance()
static const LineByVectorType * instance()
static const HalflineByVectorType * instance()
static const CubicNodeB6PType * instance()
static const ConicB5PType * instance()
static const RationalBezierCubicType * instance()
static const ScalingOverLine2Type * instance()
This class is the equivalent of SimpleObjectTypeConstructor for object types that are constructed in ...
static const ObjectImpType * stype()
Returns the ObjectImpType representing the AngleImp type.
static GUIActionList * instance()
static const EquilateralHyperbolaB4PType * instance()
static const SegmentABType * instance()
static const LineReflectionType * instance()
static const RationalBezierQuadricType * instance()
static const PointByCoordsType * instance()
static const HarmonicHomologyType * instance()
static const AreParallelType * instance()
static const ProjectedPointType * instance()
A standard implementation of StandardConstructorBase for property objects...
void merge(ObjectConstructor *e)
static const LineABType * instance()
static const HyperbolaBFFPType * instance()