Hide menu
Loading...
Searching...
No Matches

Represents a view on a drawing sheet. More...

#include <cadex/Drawing/View.hxx>

Inheritance diagram for cadex::Drawing::View:
cadex::BaseObject

Public Member Functions

 View ()
 Constructor.
 
 View (const Geom::Axis2d &thePosition)
 Constructor. Places the view at thePosition in the owning sheet.
 
void SetUuid (const cadex::Uuid &theUuid)
 
cadex::Uuid Uuid () const
 
Geom::Axis2d Position () const
 Returns the position of the view in the owning sheet.
 
void SetPosition (const Geom::Axis2d &thePosition)
 Sets the position of the view in the owning sheet.
 
Ratio Scale () const
 Returns the scale of the view.
 
void SetScale (const Ratio &theScale)
 Sets the scale of the view.
 
size_t NumberOfElements () const
 Returns the number of elements in the view.
 
void Add (const Element &theElement)
 Adds an element to the view.
 
void Accept (ElementVisitor &theVisitor) const
 
- Public Member Functions inherited from cadex::BaseObject
size_t Id () const
 Return unique identifier of public object.
 
internal::BaseObjectImpl * Impl () const
 
bool IsNull () const
 
 operator bool () const
 
template<typename T >
bool IsOfType () const
 
template<typename T >
T * Impl () const
 Reserved for internal use.
 

Static Public Member Functions

static bool CompareType (const BaseObject &theObject)
 

Additional Inherited Members

- Public Types inherited from cadex::BaseObject
typedef std::shared_ptr< internal::BaseObjectImpl > ImplType
 
- Protected Member Functions inherited from cadex::BaseObject
 BaseObject (const ImplType &theImpl)
 

Detailed Description

Represents a view on a drawing sheet.

Usually a view is a logical portion of the sheet, containing one of the literal views of the model (e.g. top view, isometric view, cutaway view). Following this idea, the view is defined by a position in the sheet and a scale (real-world model dimensions vs on-paper dimensions).

Generally an object of this class can contain any collection of drawing elements (i.e. 2D geometry), but it's expected that these elements together form a logically self-contained group.

Examples
nesting/nesting_computer/Program.cs, and nesting/nesting_computer/main.cxx.