Files
envi-code/SourceCode/Code2026/tg_shs/shs_TwtKernal/SnapSprinkerJig.cpp
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

78 lines
2.0 KiB
C++

#include "StdAfx.h"
#include "SnapSprinkerJig.h"
#include "XDbOsnapPoint.h"
#include "TAPI.h"
//extern bool g_bAssisitantSnap;
//extern int AutoSnapPoint(XPoint &ptWcs, XPoint *ptBase);
//extern int AsOsnapMask(int nOsShape);
TSnapSprinkerJig::TSnapSprinkerJig(CSprinkIsometryDlg *dlg, XPoint pt1, double nXDist, double nYDist):TSprinklerJig(dlg, pt1, nXDist, nYDist)
{
m_pOsnapPoint = new XDbOsnapPoint;
}
TSnapSprinkerJig::TSnapSprinkerJig(CSprinklerByLineDlg *dlg, XPoint pt1):TSprinklerJig(dlg, pt1)
{
m_pOsnapPoint = new XDbOsnapPoint;
}
TSnapSprinkerJig::TSnapSprinkerJig(CSprinklerByRectDlg *dlg, XPoint pt1):TSprinklerJig(dlg, pt1)
{
m_pOsnapPoint = new XDbOsnapPoint;
}
TSnapSprinkerJig::TSnapSprinkerJig(CSprinklerByFreeDlg *dlg, XPoint pt1):TSprinklerJig(dlg, pt1)
{
m_pOsnapPoint = new XDbOsnapPoint;
}
TSnapSprinkerJig::TSnapSprinkerJig(CSprinklerBySectionDlg *dlg, XPoint pt1, XPoint pt2, XPoint pt3):TSprinklerJig(dlg, pt1, pt2, pt3)
{
m_pOsnapPoint = new XDbOsnapPoint;
}
TSnapSprinkerJig::TSnapSprinkerJig(CSprinklerByArcDlg *dlg, XPoint pt1, XPoint pt2):TSprinklerJig(dlg, pt1, pt2)
{
m_pOsnapPoint = new XDbOsnapPoint;
}
AcDbEntity* TSnapSprinkerJig::entity() const
{
return (AcDbEntity*)m_pOsnapPoint;
}
//反馈
AcEdJig::DragStatus TSnapSprinkerJig::sampler()
{
DragStatus stat;
setUserInputControls((UserInputControls)
(AcEdJig::kAccept3dCoordinates|AcEdJig::kNullResponseAccepted));
if (!!m_sKeyword) setKeywordList(m_sKeyword);
else setKeywordList(NULL);
XPoint ptTemp;
stat = GetPoint(ptTemp);
if(stat == AcEdJig::kNormal)
{
if (g_bAssisitantSnap)
{
int nShape = AutoSnapPoint(ptTemp, NULL);
m_pOsnapPoint->SetSnapShape(AsOsnapMask(nShape));
}
m_pOsnapPoint->SetDrawSnap(g_bAssisitantSnap);
m_pOsnapPoint->SetLocation(ptTemp);
m_pOsnapPoint->SetEntityEx(m_pDrawEnt);
if (IsPosChanged(ptTemp))
{
m_ptResult=ptTemp;
}
else
return AcEdJig::kNoChange;
}
return stat;
}