CADability dotNET
Namespace for all classes that are not contained in the other sub namespaces
Classes
Class | Description | |
---|---|---|
ActiveFrame |
This class provides access to the current active frame (IFrame) object.
It is typically the one and only SingleDocumentFrame in the application but
may be diefferent in future, when there will be a MultiDocumenFrame.
| |
AnimatedView |
A view in which mechanical dependencies of objects can be defined and animated.
| |
AxisDrive |
Describes a rotation around an axis.
| |
BitmapTable |
Internal nur zum Debuggen public
| |
CADControl |
The main Control used to display CAD models and optionally display the user interface to manipulate the CAD model.
Simply place this control on a Windows.Form. Use ShowControlCenter, ShowToolBars and
ShowMenu to activate or inactivate the user interface. Use ShowFile(String, String) to display a CAD file.
The Frame property provides access to many more properties and methods to control the display and the menipulation
of the CAD data.
| |
CollisionDetection |
Preliminary
| |
ColorSetting |
ColorSetting is intended for objects to be used in Settings. It provides a Color
with the IShowProperty interface.
| |
CoordSysException |
Exception thrown by constructors of CoordSys indication a failure
| |
CurrentMenuIdHolder | ||
CurveDrive |
Describes a movement along a curve (which may be any path or simple curve like a line)
| |
CurveMovement | ||
DisplayChangeArg |
Parameter declaration for DisplayChangedEvent.
| |
DriveList | ||
DualCurveDrive | ||
DualSurfaceCurve | ||
Edge |
Edge is a abstract description of an egde on a Face. An Edge may belong to one or two faces.
Edges don't exist without faces (use IGeoObject and ICurvederived classes for
simple 3d curves). The Edge is defined in several ways, which are overdetermined and therfore must always
be in a consistent state: It is the pur 3-dimensional curve, an ICurve, and on each Face
the edge is defined as a 2-dimensional curve on the surface (see Surface), which has
a 2-dimensional (u/v) coordinate system (parametric space).
The Edge may be an outer or an inner edge on each face or some curve on the inside of a face (typically an
outlining curve for a certain Projection). The edge may not be outside of a face.
| |
ExportDwgDirect | ||
FinishDeserialization |
[Deprecated],
Container for objects that need a callback after deserialization.
These objects must implement IFinishDeserialization | |
GDI2DView | ||
GDIResources |
A collection of GDI Resources (Pen, Font etc.) created internally
by the ProjectedModel.
| |
Geometry |
The class Geometry only contains static methods to solve some basic
geometric tasks.
| |
Geometry..::..GeometryException |
ApplicationException derived exception class for methods in
class Geometry.
| |
GeoPoint2D..::..GeoPoint2DICompareX | ||
GeoVectorException |
ApplicationException thrown by some GeoVector operations.
| |
Grid |
The Grid settings, used only in class Projection.
| |
ImportCondor4Exception | ||
ImportDwgDirect | ||
ImportDwgDirectException | ||
InfoReader |
Encapsulates the SerializationInfo.GetInfo function
| |
Layout |
A Layout defines the placement of one or more patches on a
paper. A patch is the projection of a model into the two dimensional space with respect to scaling, projection direction,
visibility of layers etc.
A Layout can be viewed with the LayoutView and can be printed.
| |
LayoutView | ||
LinearMovement | ||
Model | ||
ModelView |
The ModelView is the three-dimensional presentation of a single Model.
| |
ModifiedMovement | ||
ModOpException |
Exception class for modification operations
| |
MultipleChoiceSetting |
Wrappes an int value. The value represents a choice of severel predefined choices.
It represents a setting defined by a [!:SettingName] and a [!:Selected] value.
Ths setting can be displayed and modified in the control center.
It is represented as a combo box. The label left of the combo box is given
by the resourceId GetString(String, StringTable..::..Category), the values are
| |
NameAlreadyExistsException |
Bei der Namensänderung eines Objektes (z.B. Layer, Farbe u.s.w.) tritt diese
Exception auf, wenn eine nach Namen sortierte Liste (z.B. LayerList)
ein Objekt mit diesen Namen bereits enthält. Diese Exception wird in CONDOR
bei Namensänderungen abgefangen und der alte Name wird wieder gesetzt.
| |
OctTree<(Of <(<'T>)>)> |
Generic class to privide fast access to IOctTreeInsertable implementing objects.
| |
OctTree<(Of <(<'T>)>)>..::..Node<(Of <(<'TT>)>)> |
Definition of a node of this octtree.
| |
OpenGlCustomize |
This class defines static events that can be used to customize the OpenGL implementation
| |
PaintBuffer |
Klasse, die die Darstellung auf dem Bildschirm realisiert.
Die Klasse hält (z.Z.) 4 Bitmaps, die nacheinander und transparent
in das Fenster (genauer in das Graphics Objekt des Parameters e beim
Aufruf von Compose) kopiert werden. Für jedes Bitmap gibt es ein eigenes
"Invalid" Rechteck bzw. Region. Der Ablauf ist wie folgt:
1. irgend etwas ändert sich (z.B das Raster, die Markierung, ein
geometrisches Objekt u.s.w.). Das muss zur Folge haben, dass InvalidateXxx
für den entsprechenden Aspekt (z.B. InvalidateDrawing für die
geometrischen Objekte, InvalidateSelect für die Markierung) aufgerufen
wird. Die Invalid-Bereiche werden für die einzelnen Aspekte akkumuliert.
Irgendwann erfolgt der Aufruf von Compose (gewöhnlich ausgelöst durch den
Paint Event des Controls)Dort versucht nun diese Klasse das Bild neu
zusammenzusetzten. Ist der Invalid-Bereich eines Aspektes leer, dann ist
das zugehörige Bitmap aktuell, d.h. kann so verwendet werden. Wenn nicht,
so muss der Bereich neu gezeichnet werden. Compose löst den RepaintXxxEvent
(z.B. RepaintDrawingEvent) aus. Die Handler dieses Events (gewöhnlich
nur einer) bekommen ein PaintToGDI Objekt, mit dessen Hilfe sie zeichnen
können.
| |
PaintTo3D |
Some static helper methods
| |
PaintTo3DException |
Exceptions that can happen during painting
| |
PaintTo3DOutOfMemory |
Exception which is thrown when the is not egnough memory for the 3D display driver
| |
PaintToBitmap |
Class to create a bitmap and draw IGeoObjects or Models on the it.
GDI+ is used for drawing, not OpenGL.
| |
PaintToGDI | ||
PaintToGDIDeprecated |
DEPRECATED! Do not use this class it will be removed in future versions of CADability
| |
PenResource |
A handle to a Pen. Pens are retrieved with this handle from a Hashtable
and are zoomed appropriately.
| |
PerformanceTimer |
Summary description for PerformanceTimer.
| |
PlaneException | ||
PlaneRef |
A reference to a plane. The Plane is implemented as a struct, i.e. a value type.
Sometimes it is necessary to have a parameter or member, which designates a plane
but may be null (when the plane is not yet computed or not valid). This class
works as an object replacement of the struct Plane.
| |
Point2D | ||
Precision |
Precision specifies the order of size of a typical model. For example
two points are considered geometrically equal if their distance is less than
Precision.eps. Default value for Precision.eps is 1e-6.
Precision.epsa is the angular precision. Two directions are considered
equal if their angular difference is less than Precision.epsa.
| |
PrecisionOverride |
Use this class to temporary override the values for the precision. The best
way to use this class is the C# using statement. The constructor of this
class overrides the values for the global Precision. The Dispose()()()()
method restores the previous values.
| |
PrintToGDI | ||
Project |
A Project is the database CADability works on. A Project is serializable and contains
one or more Models (which contain GeoObjects) lists of attributes, views and UserData.
A Project is usually saved in a file.
| |
ProjectedModel | ||
ProjectException | ||
Projection |
A parallel or perspective projection which is used to convert the 3-dimensional world coordinate system to a 2-dimensional
screen coordinate system or to a normalized 3-dimensional cube for the paint or rendering interface (IPaintTo3D).
Contains also additional hints for the paint interface and the drawing plane.
| |
Projection..::..PickArea |
Class defining the span or scope in the world coordinate space defined by a axis aligned rectangle
in a view or on the screen. The area defined by this object is either a rectangular prism of infinite
length in the direction of the view (in case of the parallel view) or a frustum (in case of a
perspective view). The pickarea is created by the [!:Projection.GetPickSpace(Rectangle)],
[!:Projection.GetPickSpace(RectangleF)] or [!:Projection.GetPickSpace(BoundingRect)].
| |
ProjectSerializationException | ||
QuadTree |
A QuadTree of 2-dimensional objects that implement IQuadTreeInsertable.
This Class might change in future, so the use of this class is deprecated
| |
RemovingFromListEventArgs |
Used as a parameter in the event RemovingFromListDelegate.
When handling an appropriate event, you can prevent the object beeing removed from the list.
| |
ReversibleChange |
This class contains the information to undo a change in the project database.
Undoing a change is done by reflection. So we need an object, the name of a method
or a property and the parameters to use in the call. This information must be
provided in the constructor. The method or property must have public access.
| |
RotationMovement | ||
RuledSurface |
Surface definition of a surface defined by two curves. Both curves use the standard parameter interval from 0.0 to 1.0
The u-direction is provided by a combination of the two curves. The v parameter is defined by a line starting on the
first curve and ending on the second curve. It is the surface described by a wire or rubber band synchronously moving along
the two curves. the default parameter space is 0.0 to 1.0 on u and v.
| |
Schedule | ||
ScheduleList | ||
ScrollableCtrl |
A System.Windows.Forms.UserControl that is composed of a CondorCtrl and
two scrollbars. It implements the scrolling on a CondorCtrl.
| |
Settings |
This class is used to give acces and store information that influences global behaviour of the
CADability system.
There is a static variable GlobalSettings. This is the only use of settings in CADability.
This class behaves as a hierarchical dictionary. The keys are strings, which may have the form "mainkey.subkey"
The values are objects, i.e. any kind of data.
If the objects implement the IShowProperty interface they are displayed in the global setting tab of the controlcenter.
There are some classes like ColorSetting, [!:IntergerProperty], DoubleProperty,
StringProperty which can be used as a setting value. If you instead simply use a double or string value
the setting will be only available to programming code but not to the user in the ControlCenter.
| |
SettingsException |
Exception Klasse für die Methoden der Klasse Settings
| |
SettingsGlobalFileName | ||
ShortCuts | ||
ShowProgressArg |
Argument for ShowProgressDelegate | |
SimpleControl |
This class is a simple System.Windows.Forms.Control derived class that implements
the task to display a [!:ICondorView] implementing object (e.g. ModelView, LayoutView.
You can use this class to display such a view on a System.Windows.Forms.Form.
It does not contain scrollbars. If you need a control with scrollbars use the class [!:CondorScrollableCtrl].
Use the SingleDocumentFrame which already creates and connects different
kind of views with one or more [!:CondorScrollableCtrl] objects.
| |
SingleDocumentFrame |
This is the main connecting point for an interactive CADability application.
Other interactive components like ControlCenter, ToolBarDockContainer,
MoveableToolBar or LoadMenu(String, IFrame) have to be
created with a reference to this SingleDocumentFrame.
| |
SweptPlanarCurve | ||
SymbolEntry | ||
SymbolList | ||
SymbolMainProperty |
Property page in the control center, that manages the symbols available for the project.
| |
SymbolView | ||
UndoFrameException |
Exception class for the UndoFrame class
| |
UndoRedoSystem |
The undo/redo sytem usually exists as a member in the Project and is accessed
via Undo. The project handles the menu commands "MenuId.Edit.Undo"
and ""MenuId.Edit.Redo" and calls UndoLastStep()()()() rsp. RedoLastStep()()()().
To add a step to the undo system call AddUndoStep(ReversibleChange) | |
UndoStep | ||
UserData |
A table, that associates names with objects.
Its purpose is to attach any kind of (user) information to existing CADability objects.
Many objects of the CADability namespace provide a UserData property, by means of which
you can connect any object to it. If the object is serializable, it will be serialized
together with the CADability object. If it implements IClonable it will be cloned when the
containing object is cloned. If it implements IShowProperty it will be displayed
together with the object in the ControlCenter. If it implements IMultiObjectUserData
it will be displayed as a common property when multiple objects are displayed in the ControlCenter
| |
Vertex |
Describes a vertex of an Edge. A vertex is the start or endpoint of an edge.
It connects at least two edges but can belong to any number of edges.
|
Structures
Structure | Description | |
---|---|---|
Angle |
An angle defined in radians. The value of the angle is a double which is greater or equal to 0
and less than (and not equal) 2*pi.
Via cast operators the angle seamlessly operates as a double.
| |
Axis |
An axis given by a location and a direction. There is no orientation for an
x-direction or y-direction. If you need that use CoordSys
Keep in mind that this is a value type. Passing a value type as a (non ref) parameter and changing it's value
inside the invoked method leaves the original unchanged.
| |
BoundingCube |
Represents a bounding cuboid, that is an extent in 3 dimensions
| |
BoundingRect |
BoundingRect stellt ein horizontales zweidimensionales Rechteck dar. Es beschreibt eine Ausdehnung.
BoundingRect ist kein "geometrisches Objekt" im Sinne von CADability. Es ist als
"value type" implementiert, nicht als Objekt. D.h. insbesondere, dass Zuweisungen
immer Kopien erzeugen, die von dem Original unabhängig sind.
| |
CoordSys |
Rechtwinkliges, rechtshändiges Koordinatensystem. Normierte Einheitsvektoren?
| |
GeoPoint |
A 3-dimensional point with double components. The components are directly accesible
to achieve maximum speed.
Note Keep in mind that this is a value type. Passing a value type as a (non ref) parameter and changing it's value inside the invoked method leaves the original unchanged. | |
GeoPoint2D |
A 2-dimensional point with double x and y components.
Keep in mind that this is a value type. Passing a value type as a (non ref) parameter and changing it's value
inside the invoked method leaves the original unchanged.
| |
GeoVector |
A 3-dimensional vector with double x,y and z components. The vector is not necessary normalized.
Keep in mind that this is a value type. Passing a value type as a (non ref) parameter and changing it's value
inside the invoked method leaves the original unchanged.
| |
GeoVector2D |
A two dimensional vector with double x and y components.
Keep in mind that this is a value type. Passing a value type as a (non ref) parameter and changing it's value
inside the invoked method leaves the original unchanged.
| |
Matrix4 |
Homogenuos matrix for 3 dimensions, i.e. 4x4 matrix. Mainly used for perspective views.
| |
ModOp |
A 3-dimensional modification operation implemented as a homogenous matrix 4*3.
You can apply such a modification to GeoPoints or GeoVectors
or you can use it for GeoObjects Modify(ModOp).
If you want to move, rotate, scale reflect or generally modify a GeoObject you will need this class.
Use the static methods to create ModOps that do a required modification (like Rotate(Int32, SweepAngle), Translate(Double, Double, Double) etc.
| |
ModOp2D |
A 2-dimensional modification operation implemented as a homogenous matix 3*2. You can apply
such modificaion to GeoVector2D and GeoPoint2D points or to [!:ICurve2D]
implementing objects.
| |
Plane |
A simple plane as a value type. Is used e.g. as a drawing plane, an intersection plane etc.
It also serves as a coordinate system (see CoordSys).
| |
Selection | ||
SweepAngle |
A sweep angle. Typically the value of this object is between -2*pi and +2*pi.
Used for rotation operations etc.
|
Interfaces
Interface | Description | |
---|---|---|
IDisplayHotSpots | ||
IDrive |
Methods and properties common to all drive objects
| |
IDualSurfaceCurve | ||
IFinishDeserialization |
[Deprecated],
Implement this interface to receive the "DeserializationDone" callback after
the object is deserialized. To receive this callback you also hav to add your
object to the appropriate list by doing the following on the Constructor
(SerializationInfo info, StreamingContext context): CopyC# FinishDeserialization fd = context.Context as FinishDeserialization; if (fd!=null) fd.Add(this); | |
IFrame | ||
IHotSpot |
Interface implemented by HotSpots.
| |
IMovement | ||
IMultiObjectUserData |
Implement this interface on your UserData objects if you want your UserData to be displayed
as a common property of multiple selected objects.
| |
INamedAttribute |
All Attributes for IGeoObject objects (e.g. Layer) are identified by name.
They all implement this interface
| |
INotifyModification |
Objekte, die dieses Interface implementieren, rufen bei relevanten Veränderungen
DidModifyDelegate auf.
| |
IOctTreeInsertable | ||
IPaintTo3D |
Interface to paint on a OpenGL, DirectX, GDI or some other output device. This interface may still change in future
it is provided for informational purposes only.
| |
IPaintTo3DList | ||
IQuadTreeInsertable |
Ein Interface für Objekte, die in einen QuadTree eingefügt werden können.
Der QuadTree kann also nicht nur IGeoObject Objekte aufnehmen, sondern alle
Objekte, die IQuadTreeInsertable unterstützen.
| |
ISchedule | ||
ISettingChanged |
Objekte, die dieses Interface implementieren, zeigen an, dass sie eine Einstellung
repräsentieren und bei deren Veränderung SettingChanged aufrufen. Verwender dieser
Objekte können sich hier anmelden, um diese Änderungen mitzubekommen.
| |
IView |