Files
envi-code/SourceCode/Code2026/tg_shs/shs_geLib/TGGiCustomWorldDraw.cpp
T
2026-09-28 15:28:50 +08:00

104 lines
2.2 KiB
C++

//-----------------------------------------------------------------------------+
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TGGiCustomWorldDraw.cpp
// = Version : ver2.0
// = Author : xlc
// = CreateDate : 2002-09-09
// = Description: ÀàµÄ¶¨Òå
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#include "StdAfx.h"
#include "TGGiCustomWorldDraw.h"
#include "TGGiCustomContext.h"
#include "TGGiCustomSubEntityTraits.h"
#include "TGGiCustomWorldGeometry.h"
#include "TchGlobalFunc.h"
ACRX_DEFINE_MEMBERS(TGGiCustomWorldDraw);
TGGiCustomWorldDraw::TGGiCustomWorldDraw()
: mDeviation(0.1)
{
mpContext = new TGGiCustomContext;
mpSubEntityTraits = new TGGiCustomSubEntityTraits;
mpWorldGeometry = new TGGiCustomWorldGeometry(this);
m_pStreamDc = NULL; //add by W on 060603
}
TGGiCustomWorldDraw::~TGGiCustomWorldDraw()
{
delete mpSubEntityTraits;
delete mpWorldGeometry;
delete mpContext;
}
AcGiRegenType TGGiCustomWorldDraw::regenType() const
{
return kAcGiRenderCommand;
}
Adesk::Boolean TGGiCustomWorldDraw::regenAbort() const
{
return Adesk::kFalse;
}
AcGiSubEntityTraits& TGGiCustomWorldDraw::subEntityTraits() const
{
return *mpSubEntityTraits;
}
AcGiWorldGeometry& TGGiCustomWorldDraw::geometry() const
{
return *mpWorldGeometry;
}
Adesk::Boolean TGGiCustomWorldDraw::isDragging() const
{
return Adesk::kFalse;
}
double TGGiCustomWorldDraw::deviation(const AcGiDeviationType type, const AcGePoint3d& pt) const
{
return mDeviation;
}
Adesk::UInt32 TGGiCustomWorldDraw::numberOfIsolines() const
{
int isolines = 4;
TGGetVar(_T("ISOLINES"), &isolines);
return isolines;
}
AcGiGeometry* TGGiCustomWorldDraw::rawGeometry() const
{
return mpWorldGeometry;
}
AcGiContext* TGGiCustomWorldDraw::context()
{
return NULL;
}
void TGGiCustomWorldDraw::setDeviation(double dev)
{
mDeviation = dev;
}
TDPtrList<TGGiShellData>& TGGiCustomWorldDraw::shellData()
{
return m_lstShellData;
}
TGGiDrawStreamBase& TGGiCustomWorldDraw::curveData()
{
return (m_pStreamDc ? *m_pStreamDc : (TGGiDrawStreamBase &)m_lstCurves);
}
void TGGiCustomWorldDraw::setStreamDc(TGGiDrawStreamBase *pDc)
{
m_pStreamDc = pDc;
}