CFx SDK Documentation
2026 SP0
Loading...
Searching...
No Matches
SDK
CFx
inc
FxInputPointManager.h
Go to the documentation of this file.
1
//
2
// (C) Copyright 2005-2025 by Graebert GmbH.
3
//
4
// Permission to use, copy, modify, and distribute this software in
5
// object code form for any purpose and without fee is hereby granted,
6
// provided that the above copyright notice appears in all copies and
7
// that both that copyright notice and the limited warranty and
8
// restricted rights notice below appear in all supporting
9
// documentation.
10
//
11
// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
12
// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
13
// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
14
// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
15
// UNINTERRUPTED OR ERROR FREE.
16
17
#pragma once
18
19
#include "
FxPragmaPush.h
"
20
21
#include "
DDKERNEL.h
"
22
23
#include "
FxOsnapPoint.h
"
24
25
#include <
Ge/GePoint3d.h
>
26
27
class
CFxInputContextReactor
;
28
class
CFxHitTestInfo
;
29
class
CFxView
;
30
class
CFxTracker
;
31
class
CFxOtrackPoint
;
32
class
CFxGripPoint;
33
class
CFxOrthoPoint
;
34
class
CFxOsnapPoint
;
35
class
CFxSelectionSet
;
36
class
CFxDocument
;
37
class
CFxExpressionParser;
38
class
IFxConstraintManager;
39
class
CFxRibbonContextualState
;
40
class
CFxDraggingPreview;
46
class
DDKERNEL_API
CFxInputPointManager
:
public
OdRxObject
47
{
48
friend
class
CFxExpressionParser
;
49
public
:
50
enum
EntitiesMode
51
{
52
eByAPERTURE
= 1,
53
eByPICKBOX
= 2,
54
eByFramePreview
= 3,
55
eByMaxRequiredSize
= 4
56
};
57
58
ODRX_DECLARE_MEMBERS
(
CFxInputPointManager
);
59
60
CFxInputPointManager
(
void
);
61
public
:
62
~CFxInputPointManager
(
void
)
override
;
65
virtual
void
AddInputContextReactor
(
CFxInputContextReactor
* pReactor) = 0;
68
virtual
void
RemoveInputContextReactor
(
CFxInputContextReactor
* pReact) = 0;
71
virtual
void
AddTracker
(
CFxTracker
* pTracker,
bool
bPermanent ) = 0;
74
virtual
void
RemoveTracker
(
CFxTracker
* pTracker ) = 0;
77
virtual
CFxHitTestInfo
*
GetHitTestInfo
() = 0;
78
81
virtual
bool
IsUpdateTrackersActive
()
const
= 0;
84
virtual
bool
IsDrawTrackersActive
()
const
= 0;
87
virtual
void
AddGrVecsVector
(
const
CFxView
* pView,
int
color,
const
OdGePoint3d
& start,
const
OdGePoint3d
& end,
int
flag ) = 0;
90
virtual
CFxExpressionParser
*
GetParameterParser
()
const
= 0;
94
virtual
const
OdGePoint3d
&
GetPrimaryPoint
()
const
= 0;
98
virtual
const
OdGePoint3d
&
GetPrimaryClickPoint
()
const
= 0;
102
virtual
const
OdGePoint3d
*
GetBasePoint
()
const
= 0;
106
virtual
void
SetBasePoint
(
const
OdGePoint3d
* pBasePoint) = 0;
109
virtual
void
SetRubberLinePoint
(
const
OdGePoint3d
* pRubberLinePoint ) = 0;
110
111
virtual
const
CFxOtrackPoint
*
GetOtrackPoint
()
const
= 0;
114
virtual
const
OdGePoint3d
&
GetRubberLinePoint
()
const
= 0;
117
virtual
const
OdGePoint3d
&
GetRubberLineClickPoint
()
const
= 0;
120
virtual
const
OdGePoint3d
&
GetCursorPoint
()
const
= 0;
123
virtual
const
OdGePoint3d
&
GetCursorClickPoint
()
const
= 0;
127
virtual
const
CFxGripPoint*
GetGripPoint
()
const
= 0;
131
virtual
void
SetGripPoint
(
const
CFxGripPoint* pGrip) = 0;
135
virtual
IFxConstraintManager*
GetConstraintManager
()
const
= 0;
139
virtual
const
CFxOrthoPoint
*
GetOrthoPoint
()
const
= 0;
142
virtual
const
CFxOsnapPoint
*
GetOsnapPoint
(
bool
bCalculate)
const
= 0;
146
virtual
void
SetOsnapPoint
(
const
CFxOsnapPoint
* pOsnap) = 0;
150
virtual
void
SetOsnapPoint
(
CFxOsnapPoint::OsnapMode
osnapMode,
const
OdGePoint3d
& point,
const
OdDbFullSubentPath
& first,
const
OdDbFullSubentPath
& second ) = 0;
154
virtual
const
CFxSelectionSet
*
GetSelectionSet
(
EntitiesMode
mode =
eByAPERTURE
)
const
= 0;
157
virtual
CFxSelectionSet
*
GetSelectionSetCopy
(
EntitiesMode
mode )
const
= 0;
160
virtual
void
EnableOsnapCalculation
(
bool
bVal ) = 0;
163
virtual
bool
IsOsnapCalculationEnabled
()
const
= 0;
166
virtual
void
EnableOtrackCalculation
(
bool
bVal ) = 0;
169
virtual
bool
IsOtrackCalculationEnabled
()
const
= 0;
172
virtual
void
EnableOrthoCalculation
(
bool
bVal ) = 0;
175
virtual
bool
IsOrthoCalculationEnabled
()
const
= 0;
178
virtual
void
EnableGripsCalculation
(
bool
bVal ) = 0;
181
virtual
bool
IsGripsCalculationEnabled
()
const
= 0;
184
virtual
void
EnableSnapCalculation
(
bool
bVal ) = 0;
187
virtual
bool
IsSnapCalculationEnabled
()
const
= 0;
190
virtual
bool
IsOtrackPolarCalculationEnabled
()
const
= 0;
193
virtual
bool
IsCursorSnapping
()
const
= 0;
196
virtual
void
EnableOtrackPolarCalculation
(
bool
bVal ) = 0;
199
virtual
OdInt16
GetCurrentOSMODE
()
const
= 0;
202
virtual
void
SetCurrentOSMODE
(
OdInt16
iNewMode) = 0;
205
virtual
const
OdGePlane
&
GetWorkingPlane
()
const
= 0;
208
virtual
void
AddOtrackBasePoint
(
const
CFxOsnapPoint
*,
bool
ignoreOtrack =
false
) = 0;
211
virtual
void
ClearOtrackBasePoints
() = 0;
217
virtual
void
SkipCurrentInputPoint
(
bool
skip =
true
) = 0;
220
virtual
const
CFxDocument
*
GetFxDocument
()
const
= 0;
221
225
virtual
OdGeMatrix3d
WorldToWorkingPlaneMatrix
()
const
;
226
230
virtual
void
GetWorkingPlaneSystem
(
OdGePoint3d
& origin,
OdGeVector3d
& xAxis,
OdGeVector3d
& yAxis)
const
;
231
234
static
void
GetCursorSystem
(
const
CFxView
* pFxView,
OdGePoint3d
& ptOrigin,
OdGeVector3d
& xAxis,
OdGeVector3d
& yAxis );
235
236
static
void
GetElevatedUcsPlane
(
const
CFxView
* pFxView,
OdGePoint3d
& ptOrigin,
OdGeVector3d
& xAxis,
OdGeVector3d
& yAxis );
237
238
static
void
GetWorkPlane
(
const
CFxView
* pFxView,
OdGePoint3d
& ptOrigin,
OdGeVector3d
& xAxis,
OdGeVector3d
& yAxis );
239
240
virtual
bool
UpdateTrackers
(
const
CFxEvent
* event ) = 0;
241
247
virtual
void
AllowAbortOperation
(
bool
bVal ) = 0;
248
253
virtual
bool
OperationAborted
()
const
= 0;
254
261
virtual
void
ResetAbortOperation
(
bool
bSet,
unsigned
int
iInterval ) = 0;
262
270
virtual
bool
CalculateWCSToSnapMatrix
(
const
OdGePoint2d
& unitsUCS,
OdGeMatrix3d
& result,
OdGeMatrix3d
* wcs2ucs = 0,
OdGePlane
* planeUCS = 0 ) = 0;
271
277
virtual
void
SetPrimaryPoint
(
const
OdGePoint3d
& pt,
bool
bForceUpdate =
false
) = 0;
278
282
virtual
void
CacheMe
(
const
CFxTracker
* pTracker,
bool
bAddToCache,
int
iPriority ) = 0;
283
284
virtual
CFxRibbonContextualState
*
GetRibbonContextualState
()
const
= 0;
285
virtual
void
SetRibbonContextualState
(
CFxRibbonContextualState
* pContextualState ) = 0;
286
287
virtual
const
CFxDraggingPreview*
GetDraggingPreview
()
const
= 0;
288
virtual
void
SetDraggingPreview
( CFxDraggingPreview* pDraggingPreview ) = 0;
289
290
virtual
const
CFxOsnapPoint
*
GetLastOsnapPoint
()
const
= 0;
291
};
292
293
typedef
OdSmartPtr<CFxInputPointManager>
CFxInputPointManagerPtr
;
294
295
class
DDKERNEL_API
CFxRibbonContextualState
296
{
297
public
:
298
CFxRibbonContextualState
()
299
{
300
};
301
virtual
~CFxRibbonContextualState
()
302
{
303
};
304
virtual
int
GetType
()
const
= 0;
305
virtual
void
*
GetData
()
const
= 0;
306
};
307
308
#include "
FxPragmaPop.h
"
DDKERNEL.h
DDKERNEL_API
#define DDKERNEL_API
Definition
DDKERNEL.h:32
CFxInputPointManagerPtr
OdSmartPtr< CFxInputPointManager > CFxInputPointManagerPtr
Definition
FxInputPointManager.h:293
FxOsnapPoint.h
CFxEvent
#define CFxEvent
Definition
FxPlatformSettings.h:90
FxPragmaPop.h
FxPragmaPush.h
GePoint3d.h
OdInt16
short OdInt16
Definition
OdPlatformSettings.h:741
CFxDocument
Definition
FxDocument.h:47
CFxHitTestInfo
Definition
FxHitTestInfo.h:37
CFxInputContextReactor
Definition
FxInputContextReactor.h:40
CFxInputPointManager::CalculateWCSToSnapMatrix
virtual bool CalculateWCSToSnapMatrix(const OdGePoint2d &unitsUCS, OdGeMatrix3d &result, OdGeMatrix3d *wcs2ucs=0, OdGePlane *planeUCS=0)=0
CFxInputPointManager::~CFxInputPointManager
~CFxInputPointManager(void) override
CFxInputPointManager::EnableOtrackPolarCalculation
virtual void EnableOtrackPolarCalculation(bool bVal)=0
CFxInputPointManager::GetCurrentOSMODE
virtual OdInt16 GetCurrentOSMODE() const =0
CFxInputPointManager::IsUpdateTrackersActive
virtual bool IsUpdateTrackersActive() const =0
CFxInputPointManager::GetLastOsnapPoint
virtual const CFxOsnapPoint * GetLastOsnapPoint() const =0
CFxInputPointManager::IsSnapCalculationEnabled
virtual bool IsSnapCalculationEnabled() const =0
CFxInputPointManager::GetOsnapPoint
virtual const CFxOsnapPoint * GetOsnapPoint(bool bCalculate) const =0
CFxInputPointManager::CFxInputPointManager
CFxInputPointManager(void)
CFxInputPointManager::IsOtrackCalculationEnabled
virtual bool IsOtrackCalculationEnabled() const =0
CFxInputPointManager::EnableOrthoCalculation
virtual void EnableOrthoCalculation(bool bVal)=0
CFxInputPointManager::IsCursorSnapping
virtual bool IsCursorSnapping() const =0
CFxInputPointManager::AllowAbortOperation
virtual void AllowAbortOperation(bool bVal)=0
CFxInputPointManager::RemoveInputContextReactor
virtual void RemoveInputContextReactor(CFxInputContextReactor *pReact)=0
CFxInputPointManager::IsOsnapCalculationEnabled
virtual bool IsOsnapCalculationEnabled() const =0
CFxInputPointManager::GetDraggingPreview
virtual const CFxDraggingPreview * GetDraggingPreview() const =0
CFxInputPointManager::GetSelectionSetCopy
virtual CFxSelectionSet * GetSelectionSetCopy(EntitiesMode mode) const =0
CFxInputPointManager::GetOrthoPoint
virtual const CFxOrthoPoint * GetOrthoPoint() const =0
CFxInputPointManager::GetRibbonContextualState
virtual CFxRibbonContextualState * GetRibbonContextualState() const =0
CFxInputPointManager::IsOtrackPolarCalculationEnabled
virtual bool IsOtrackPolarCalculationEnabled() const =0
CFxInputPointManager::GetCursorPoint
virtual const OdGePoint3d & GetCursorPoint() const =0
CFxInputPointManager::GetFxDocument
virtual const CFxDocument * GetFxDocument() const =0
CFxInputPointManager::GetHitTestInfo
virtual CFxHitTestInfo * GetHitTestInfo()=0
CFxInputPointManager::EnableGripsCalculation
virtual void EnableGripsCalculation(bool bVal)=0
CFxInputPointManager::AddInputContextReactor
virtual void AddInputContextReactor(CFxInputContextReactor *pReactor)=0
CFxInputPointManager::GetWorkPlane
static void GetWorkPlane(const CFxView *pFxView, OdGePoint3d &ptOrigin, OdGeVector3d &xAxis, OdGeVector3d &yAxis)
CFxInputPointManager::AddGrVecsVector
virtual void AddGrVecsVector(const CFxView *pView, int color, const OdGePoint3d &start, const OdGePoint3d &end, int flag)=0
CFxInputPointManager::GetWorkingPlane
virtual const OdGePlane & GetWorkingPlane() const =0
CFxInputPointManager::SkipCurrentInputPoint
virtual void SkipCurrentInputPoint(bool skip=true)=0
CFxInputPointManager::GetParameterParser
virtual CFxExpressionParser * GetParameterParser() const =0
CFxInputPointManager::EnableOtrackCalculation
virtual void EnableOtrackCalculation(bool bVal)=0
CFxInputPointManager::SetOsnapPoint
virtual void SetOsnapPoint(const CFxOsnapPoint *pOsnap)=0
CFxInputPointManager::ClearOtrackBasePoints
virtual void ClearOtrackBasePoints()=0
CFxInputPointManager::CacheMe
virtual void CacheMe(const CFxTracker *pTracker, bool bAddToCache, int iPriority)=0
CFxInputPointManager::IsOrthoCalculationEnabled
virtual bool IsOrthoCalculationEnabled() const =0
CFxInputPointManager::IsGripsCalculationEnabled
virtual bool IsGripsCalculationEnabled() const =0
CFxInputPointManager::GetElevatedUcsPlane
static void GetElevatedUcsPlane(const CFxView *pFxView, OdGePoint3d &ptOrigin, OdGeVector3d &xAxis, OdGeVector3d &yAxis)
CFxInputPointManager::IsDrawTrackersActive
virtual bool IsDrawTrackersActive() const =0
CFxInputPointManager::GetSelectionSet
virtual const CFxSelectionSet * GetSelectionSet(EntitiesMode mode=eByAPERTURE) const =0
CFxInputPointManager::GetPrimaryPoint
virtual const OdGePoint3d & GetPrimaryPoint() const =0
CFxInputPointManager::GetBasePoint
virtual const OdGePoint3d * GetBasePoint() const =0
CFxInputPointManager::WorldToWorkingPlaneMatrix
virtual OdGeMatrix3d WorldToWorkingPlaneMatrix() const
CFxInputPointManager::GetGripPoint
virtual const CFxGripPoint * GetGripPoint() const =0
CFxInputPointManager::GetCursorClickPoint
virtual const OdGePoint3d & GetCursorClickPoint() const =0
CFxInputPointManager::GetCursorSystem
static void GetCursorSystem(const CFxView *pFxView, OdGePoint3d &ptOrigin, OdGeVector3d &xAxis, OdGeVector3d &yAxis)
CFxInputPointManager::SetCurrentOSMODE
virtual void SetCurrentOSMODE(OdInt16 iNewMode)=0
CFxInputPointManager::SetDraggingPreview
virtual void SetDraggingPreview(CFxDraggingPreview *pDraggingPreview)=0
CFxInputPointManager::OperationAborted
virtual bool OperationAborted() const =0
CFxInputPointManager::SetGripPoint
virtual void SetGripPoint(const CFxGripPoint *pGrip)=0
CFxInputPointManager::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(CFxInputPointManager)
CFxInputPointManager::GetOtrackPoint
virtual const CFxOtrackPoint * GetOtrackPoint() const =0
CFxInputPointManager::AddTracker
virtual void AddTracker(CFxTracker *pTracker, bool bPermanent)=0
CFxInputPointManager::EnableOsnapCalculation
virtual void EnableOsnapCalculation(bool bVal)=0
CFxInputPointManager::EntitiesMode
EntitiesMode
Definition
FxInputPointManager.h:51
CFxInputPointManager::eByFramePreview
@ eByFramePreview
Definition
FxInputPointManager.h:54
CFxInputPointManager::eByAPERTURE
@ eByAPERTURE
Definition
FxInputPointManager.h:52
CFxInputPointManager::eByMaxRequiredSize
@ eByMaxRequiredSize
Definition
FxInputPointManager.h:55
CFxInputPointManager::eByPICKBOX
@ eByPICKBOX
Definition
FxInputPointManager.h:53
CFxInputPointManager::SetOsnapPoint
virtual void SetOsnapPoint(CFxOsnapPoint::OsnapMode osnapMode, const OdGePoint3d &point, const OdDbFullSubentPath &first, const OdDbFullSubentPath &second)=0
CFxInputPointManager::AddOtrackBasePoint
virtual void AddOtrackBasePoint(const CFxOsnapPoint *, bool ignoreOtrack=false)=0
CFxInputPointManager::RemoveTracker
virtual void RemoveTracker(CFxTracker *pTracker)=0
CFxInputPointManager::GetWorkingPlaneSystem
virtual void GetWorkingPlaneSystem(OdGePoint3d &origin, OdGeVector3d &xAxis, OdGeVector3d &yAxis) const
CFxInputPointManager::SetRubberLinePoint
virtual void SetRubberLinePoint(const OdGePoint3d *pRubberLinePoint)=0
CFxInputPointManager::ResetAbortOperation
virtual void ResetAbortOperation(bool bSet, unsigned int iInterval)=0
CFxInputPointManager::SetPrimaryPoint
virtual void SetPrimaryPoint(const OdGePoint3d &pt, bool bForceUpdate=false)=0
CFxInputPointManager::GetConstraintManager
virtual IFxConstraintManager * GetConstraintManager() const =0
CFxInputPointManager::GetRubberLinePoint
virtual const OdGePoint3d & GetRubberLinePoint() const =0
CFxInputPointManager::UpdateTrackers
virtual bool UpdateTrackers(const CFxEvent *event)=0
CFxInputPointManager::GetRubberLineClickPoint
virtual const OdGePoint3d & GetRubberLineClickPoint() const =0
CFxInputPointManager::CFxExpressionParser
friend class CFxExpressionParser
Definition
FxInputPointManager.h:48
CFxInputPointManager::SetBasePoint
virtual void SetBasePoint(const OdGePoint3d *pBasePoint)=0
CFxInputPointManager::EnableSnapCalculation
virtual void EnableSnapCalculation(bool bVal)=0
CFxInputPointManager::SetRibbonContextualState
virtual void SetRibbonContextualState(CFxRibbonContextualState *pContextualState)=0
CFxInputPointManager::GetPrimaryClickPoint
virtual const OdGePoint3d & GetPrimaryClickPoint() const =0
CFxOrthoPoint
Definition
FxOrthoPoint.h:26
CFxOsnapPoint
Definition
FxOsnapPoint.h:30
CFxOsnapPoint::OsnapMode
OsnapMode
Definition
FxOsnapPoint.h:34
CFxOtrackPoint
Definition
FxOtrackPoint.h:26
CFxRibbonContextualState
Definition
FxInputPointManager.h:296
CFxRibbonContextualState::~CFxRibbonContextualState
virtual ~CFxRibbonContextualState()
Definition
FxInputPointManager.h:301
CFxRibbonContextualState::GetData
virtual void * GetData() const =0
CFxRibbonContextualState::CFxRibbonContextualState
CFxRibbonContextualState()
Definition
FxInputPointManager.h:298
CFxRibbonContextualState::GetType
virtual int GetType() const =0
CFxSelectionSet
Definition
FxSelectionSet.h:50
CFxTracker
Definition
FxTracker.h:36
CFxView
Definition
FxView.h:258
OdDbFullSubentPath
Definition
DbSubentId.h:51
OdGeMatrix3d
Definition
GeMatrix3d.h:79
OdGePlane
Definition
GePlane.h:47
OdGePoint2d
Definition
GePoint2d.h:63
OdGePoint3d
Definition
GePoint3d.h:57
OdGeVector3d
Definition
GeVector3d.h:55
OdSmartPtr
Definition
SmartPtr.h:58
Generated on Tue Apr 15 2025 11:30:08