CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
AECGripManager.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a
16// license agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2022 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23#ifndef __AECGRIP_MANAGER_H__
24#define __AECGRIP_MANAGER_H__
25
26#include "Grips/AECGrip.h"
27#include "Grips/AECGrPoint.h"
29
34class AECBASE_API AECGripManager : public OdRxObject
35{
37
38 public:
43
47 void init( AECDbEntity* pEnt,
48 double dUnitSize, OdUInt8 iGripSize, const OdGeVector3d& vViewDir, OdUInt8 iFlags );
49
54
58 double gripSize() const;
59
64 bool is3d() const;
65
68 bool isFullSet() const;
69
72 bool isDispRepActive( OdRxClass* pClass ) const;
73
78
81 std::vector<AECGripPtr>& grips() const;
82
85 std::vector<AECGrPoint>& points() const;
86
89 std::vector<OdUInt32>& modes() const;
90
95
100 const std::vector<OdUInt32>& aModes, const OdGeVector3d& vOffset );
101
104 void clear();
105
109
112 void setEntityGripState( OdUInt8 iState ) const;
113
114 private:
115 //
116 AECDbEntity* m_pEnt;
117
118 //
119 double m_dViewUnit;
120
121 //
122 OdUInt8 m_iGripSize;
123
124 //
125 OdGeVector3d m_vViewDir;
126
127 //
128 bool m_bFullSet;
129
130 // High-level grip providers.
131 std::vector<AECGripPtr> m_aGrips;
132
133 // Low-level grip points.
134 std::vector<AECGrPoint> m_aPts;
135
136 //
137 std::vector<OdUInt32> m_aModes;
138
139 //
140 std::vector<OdUInt32> m_aPos;
141};
143
144#endif // __AECGRIP_MANAGER_H__
OdSmartPtr< AECGripManager > AECGripManagerPtr
unsigned char OdUInt8
#define ODRX_DECLARE_MEMBERS(ClassName)
Definition: RxObject.h:112
std::vector< AECGrPoint > & points() const
double gripSize() const
bool is3d() const
AECDbEntity * entity() const
bool isFullSet() const
std::vector< OdUInt32 > & modes() const
const OdGeVector3d & viewDirection() const
AECGr::Result moveGrips(const OdDbVoidPtrArray &aGripAppData, const std::vector< OdUInt32 > &aModes, const OdGeVector3d &vOffset)
void setEntityGripState(OdUInt8 iState) const
AECGr::Result regenerateGrips()
OdUInt8 entityGripState() const
void init(AECDbEntity *pEnt, double dUnitSize, OdUInt8 iGripSize, const OdGeVector3d &vViewDir, OdUInt8 iFlags)
std::vector< AECGripPtr > & grips() const
bool isDispRepActive(OdRxClass *pClass) const
Result
Definition: AECGr.h:57