Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

MrDwgWorldDraw.h
00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
00002 //
00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
00004 // and considered a trade secret as defined under civil and criminal statutes.
00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
00006 // unauthorized use or misappropriation of its trade secrets.  Use of this information
00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
00009 
00010 #pragma once
00011 
00012 #include "MrDwgContext.h"
00013 #include "MrDwgSubEntityTraits.h"
00014 #include "MrDwgWorldGeometry.h"
00015 #include "MrDwgReader.h"
00016 #include "hc.h"
00017 
00018 #include <acgi.h>
00019 
00020 class MrDwgWorldDraw : public AcGiWorldDraw
00021 {
00022 public:
00023     MrDwgWorldDraw(std::vector<HC_KEY> * keys, AcDbEntity * pEnt, MrDwgReader * reader);
00024     ~MrDwgWorldDraw();
00025 
00026     void setRegenType(AcGiRegenType r);
00027     AcGiRegenType regenType() const;
00028     Adesk::Boolean regenAbort() const;
00029     AcGiSubEntityTraits & subEntityTraits() const;
00030     AcGiWorldGeometry & geometry() const;
00031     AcGiGeometry *rawGeometry() const;
00032     Adesk::Boolean isDragging() const;
00033     double deviation(const AcGiDeviationType, const AcGePoint3d &) const;
00034     Adesk::UInt32 numberOfIsolines() const;
00035 
00036     AcGiContext *context();
00037     void regenerate(AcDbEntity * pEntity);
00038     void regenerate(AcDbBlockTableRecord * pBTR);
00039 
00040     MrDwgContext * mpContext;
00041     MrDwgSubEntityTraits * mpTraits;
00042     MrDwgWorldGeometry * mpGeom;
00043     AcGiRegenType m_regenType;
00044 };