当前位置:网站首页>CAD ARX gets the current viewport settings
CAD ARX gets the current viewport settings
2022-07-06 07:57:00 【zxt_ net】
AcDbViewTableRecord GetCurrentView()
{
AcDbViewTableRecord view;
struct resbuf rb;
struct resbuf wcs, ucs, dcs; // Coordinate system mark used when converting coordinates
wcs.restype = RTSHORT;
wcs.resval.rint = 0;
ucs.restype = RTSHORT;
ucs.resval.rint = 1;
dcs.restype = RTSHORT;
dcs.resval.rint = 2;
// Get the current viewport's “ see ” Pattern
acedGetVar(“VIEWMODE”, &rb);
view.setPerspectiveEnabled(rb.resval.rint & 1);
view.setFrontClipEnabled(rb.resval.rint & 2);
view.setBackClipEnabled(rb.resval.rint & 4);
view.setFrontClipAtEye(!(rb.resval.rint & 16));
// The center point of the view in the current viewport (UCS coordinate )
acedGetVar(“VIEWCTR”, &rb);
acedTrans(rb.resval.rpoint, &ucs, &dcs, 0, rb.resval.rpoint);
view.setCenterPoint(AcGePoint2d(rb.resval.rpoint[X],
rb.resval.rpoint[Y]));
// The focal length of the lens in the perspective view of the current viewport ( In millimetres )
acedGetVar(“LENSLENGTH”, &rb);
view.setLensLength(rb.resval.rreal);
// The position of the target point in the current viewport ( With UCS Coordinate representation )
acedGetVar(“TARGET”, &rb);
acedTrans(rb.resval.rpoint, &ucs, &wcs, 0, rb.resval.rpoint);
view.setTarget(AcGePoint3d(rb.resval.rpoint[X],
rb.resval.rpoint[Y], rb.resval.rpoint[Z]));
// The viewing direction of the current viewport (UCS)
acedGetVar(“VIEWDIR”, &rb);
acedTrans(rb.resval.rpoint, &ucs, &wcs, 1, rb.resval.rpoint);
view.setViewDirection(AcGeVector3d(rb.resval.rpoint[X],
rb.resval.rpoint[Y], rb.resval.rpoint[Z]));
// View height of the current viewport ( Graphic units )
acedGetVar(“VIEWSIZE”, &rb);
view.setHeight(rb.resval.rreal);
double height = rb.resval.rreal;
// The size of the current viewport in pixels (X and Y value )
acedGetVar(“SCREENSIZE”, &rb);
view.setWidth(rb.resval.rpoint[X] / rb.resval.rpoint[Y] * height);
// The view twist angle of the current viewport
acedGetVar(“VIEWTWIST”, &rb);
view.setViewTwist(rb.resval.rreal);
// Make the model tab or the last Layout tab current
acedGetVar(“TILEMODE”, &rb);
int tileMode = rb.resval.rint;
// Set the identification code of the current viewport
acedGetVar(“CVPORT”, &rb);
int cvport = rb.resval.rint;
// Is it a view of model space
bool paperspace = ((tileMode == 0) && (cvport == 1)) ? true : false;
view.setIsPaperspaceView(paperspace);
if (!paperspace)
{
// The offset of the front clipping plane from the target plane in the current viewport
acedGetVar(“FRONTZ”, &rb);
view.setFrontClipDistance(rb.resval.rreal);
// Get the offset value from the back clipping plane of the current viewport to the target plane
acedGetVar(“BACKZ”, &rb);
view.setBackClipDistance(rb.resval.rreal);
}
else
{
view.setFrontClipDistance(0.0);
view.setBackClipDistance(0.0);
}
return view;
}
边栏推荐
- C intercept string
- Simulation of holographic interferogram and phase reconstruction of Fourier transform based on MATLAB
- 数据治理:误区梳理篇
- edge浏览器 路径获得
- 49. Sound card driven article collection
- TS 类型体操 之 extends,Equal,Alike 使用场景和实现对比
- Pre knowledge reserve of TS type gymnastics to become an excellent TS gymnastics master
- Pangolin Library: control panel, control components, shortcut key settings
- The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
- 继电反馈PID控制器参数自整定
猜你喜欢
Risk planning and identification of Oracle project management system
Database basic commands
Parameter self-tuning of relay feedback PID controller
【Redis】NoSQL数据库和redis简介
MEX有关的学习
National economic information center "APEC industry +": economic data released at the night of the Spring Festival | observation of stable strategy industry fund
Machine learning - decision tree
[redis] Introduction to NoSQL database and redis
Solution: intelligent site intelligent inspection scheme video monitoring system
Generator Foundation
随机推荐
Comparison of usage scenarios and implementations of extensions, equal, and like in TS type Gymnastics
File upload of DVWA range
Artcube information of "designer universe": Guangzhou implements the community designer system to achieve "great improvement" of urban quality | national economic and Information Center
xpath中的position()函数使用
P3047 [USACO12FEB]Nearby Cows G(树形dp)
Data governance: metadata management
数字经济时代,如何保障安全?
MEX有关的学习
数据治理:数据质量篇
ROS learning (IX): referencing custom message types in header files
Data governance: data quality
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
数据治理:误区梳理篇
Opencv learning notes 8 -- answer sheet recognition
1015 reversible primes (20 points) prime d-ary
Solution: intelligent site intelligent inspection scheme video monitoring system
How to prevent Association in cross-border e-commerce multi account operations?
[Yugong series] February 2022 U3D full stack class 011 unity section 1 mind map
TS 体操 &(交叉运算) 和 接口的继承的区别
"Friendship and righteousness" of the center for national economy and information technology: China's friendship wine - the "unparalleled loyalty and righteousness" of the solidarity group released th