AnyCAD C++ API  2018
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义 
APIGridSystemElement.h
浏览该文件的文档.
1 //Public API. Powered by AnyCAD.
2 
3 #ifndef _APIGridSystemElement_H_
4 #define _APIGridSystemElement_H_
5 
6 #include "APIObjectDef.h"
7 
8 #include "APIRenderableElement.h"
9 
10 namespace AnyCAD{ namespace API
11 {
12  class SnapPoint;
13  class GridElement;
14  class ReferencePlane;
15  class SnapGridPoint;
16  class SnapTargetCollector;
17  class SceneNode;
26  : public RenderableElement
27  {
29  public:
34  void SetCoordinate(const Coordinate3& _Coordinate);
39  Coordinate3 GetCoordinate() const;
40 
45  void SetItemOffsetX(const FloatList& _ItemOffsetX);
50  FloatList GetItemOffsetX() const;
51 
56  void SetItemOffsetY(const FloatList& _ItemOffsetY);
61  FloatList GetItemOffsetY() const;
62 
67  void SetItemOffsetZ(const FloatList& _ItemOffsetZ);
72  FloatList GetItemOffsetZ() const;
73 
78  void SetGridItemsX(const ElementIdList& _GridItemsX);
83  ElementIdList GetGridItemsX() const;
84 
89  void SetGridItemsY(const ElementIdList& _GridItemsY);
94  ElementIdList GetGridItemsY() const;
95 
100  void SetGridItemsZ(const ElementIdList& _GridItemsZ);
105  ElementIdList GetGridItemsZ() const;
106 
111  void SetItemLabels(const ElementIdList& _ItemLabels);
116  ElementIdList GetItemLabels() const;
117 
125  bool Initialize (const FloatList& itemsX, const FloatList& itemsY, const FloatList& itemsZ) ;
132  GridElement CreateGridElement (const EnumAxesDirection& dir, long index) const;
136  void CreateItemLabels () ;
141  long GetDimensionX () const;
146  long GetDimensionY () const;
151  long GetDimensionZ () const;
158  ElementIdList GetGridItemsU (const EnumAxesDirection& dir, long index) const;
165  ElementIdList GetGridItemsV (const EnumAxesDirection& dir, long index) const;
170  virtual void CollectSnapTargets (const SnapTargetCollector& collector) const;
179  SnapGridPoint GetCrossPoint (const EnumAxesDirection& dir, const ElementId& itemU, const ElementId& itemV, long idxW) const;
186  float GetItemOffset (const EnumAxesDirection& dir, long idx) const;
193  Coordinate3 GetCoordinate (const EnumAxesDirection& dir, long idx) const;
198  virtual SceneNode GetSceneNode () const;
199  };//GridSystemElement;
200 }}//API
201 
202 #endif //_APIGridSystemElement_H_
#define AnyPlatformAPI_API
Definition: AnyPlatformAPI.h:8
TODO:
Definition: APISnapGridPoint.h:19
The element that can hold geometry.
Definition: APIRenderableElement.h:22
Coordinate.
Definition: APIMath.h:416
EnumAxesDirection
Definition: APIEnums.h:181
The id.
Definition: APIElementId.h:16
场景的节点的基类。
Definition: APISceneNode.h:22
The utiliy to collect SnapTarget.
Definition: APISnapTargetCollector.h:18
The grid element.
Definition: APIGridElement.h:23
std::vector< float > FloatList
Definition: APIString.h:15
std::vector< ElementId > ElementIdList
Definition: APIElementId.h:54
#define DECLARE_APISUPER(className, super)
Definition: APIObjectDef.h:33
The grid system element.
Definition: APIGridSystemElement.h:25