天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 66|回复: 0

获取当前视图arx

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
void getCurrentView(AcDbViewTableRecord& view) {
  struct resbuf var;
  struct resbuf WCS, UCS, DCS;
  WCS.restype = RTSHORT;
  WCS.resval.rint = 0;
  UCS.restype = RTSHORT;
  UCS.resval.rint = 1;
  DCS.restype = RTSHORT;
  DCS.resval.rint = 2;
  ads_getvar(L"VIEWMODE", &var);
  view.setPerspectiveEnabled(var.resval.rint & 1);
  view.setFrontClipEnabled(var.resval.rint & 2 ? true : false);
  view.setBackClipEnabled(var.resval.rint & 4 ? true : false);
  view.setFrontClipAtEye(!(var.resval.rint & 16));
  ads_getvar(L"BACKZ", &var);
  view.setBackClipDistance(var.resval.rreal);
  ads_getvar(L"VIEWCTR", &var);
  ads_trans(var.resval.rpoint, &UCS, &DCS, NULL, var.resval.rpoint);
  view.setCenterPoint(AcGePoint2d(var.resval.rpoint[X], var.resval.rpoint[Y]));
  ads_getvar(L"FRONTZ", &var);
  view.setFrontClipDistance(var.resval.rreal);
  ads_getvar(L"LENSLENGTH", &var);
  view.setLensLength(var.resval.rreal);
  ads_getvar(L"TARGET", &var);
  ads_trans(var.resval.rpoint, &UCS, &WCS, NULL, var.resval.rpoint);
  view.setTarget(AcGePoint3d(var.resval.rpoint[X], var.resval.rpoint[Y],
                             var.resval.rpoint[Z]));
  ads_getvar(L"VIEWDIR", &var);
  ads_trans(var.resval.rpoint, &UCS, &WCS, TRUE, var.resval.rpoint);

  view.setViewDirection(AcGeVector3d(var.resval.rpoint[X], var.resval.rpoint[Y],
                                     var.resval.rpoint[Z]));
  ads_getvar(L"VIEWSIZE", &var);
  view.setHeight(var.resval.rreal);
  double tst = view.width();
}

 

 

 

 

获取当前视图arx
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|中国膜结构网|中国膜结构协会|进口膜材|国产膜材|ETFE|PVDF|PTFE|设计|施工|安装|车棚|看台|污水池|中国膜结构网_中国空间膜结构协会

GMT+8, 2024-11-1 15:34 , Processed in 0.166313 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表