cad.net修改视口比例

[CommandMethod("changeZoom")]

static public void CommandChangeViewportZoom()

{

// access database and editor

Database db = Application.DocumentManager.

MdiActiveDocument.Database;

Editor ed = Application.DocumentManager.

MdiActiveDocument.Editor;

using (Transaction tr = db.

TransactionManager.StartTransaction())

{

LayoutManager layoutMgr = LayoutManager.Current;

Layout layoutObj;

DBDictionary layoutDict;

ed.WriteMessage("Number of Layouts = {0}\n",

layoutMgr.LayoutCount);

ed.WriteMessage("Current Layout = {0}\n",

layoutMgr.CurrentLayout);

Point3d x_Min = db.Extmin;

Point3d x_Max = db.Extmax;

using (layoutDict = tr.GetObject(db.LayoutDictionaryId,

OpenMode.ForRead) as DBDictionary)

{

foreach (DictionaryEntry layoutEntry in layoutDict)

{

using (layoutObj = tr.GetObject(

(ObjectId)(layoutEntry.Value),

OpenMode.ForRead) as Layout)

{

// Set the CurrentLayout to the layout

// if it is not Modelspace

if (layoutObj.LayoutName != "Model")

layoutMgr.CurrentLayout = layoutObj.LayoutName;

ed.WriteMessage("Layout Name = {0}\n",

layoutObj.LayoutName);

BlockTableRecord r = tr.GetObject(

layoutObj.BlockTableRecordId,

OpenMode.ForRead) as BlockTableRecord;

foreach (ObjectId obj in r)

{

DBObject dbobj = tr.GetObject(obj, OpenMode.ForRead);

Viewport vp = dbobj as Viewport;

if (vp != null)

{

ed.WriteMessage("\nnumber of Viewport = {0}",

vp.Number);

// get the screen aspect ratio to calculate

// the height and width

double mScrRatio;

// width/height

mScrRatio = (vp.Width / vp.Height);

Point3d mMaxExt = db.Extmax;

Point3d mMinExt = db.Extmin;

Extents3d mExtents = new Extents3d();

mExtents.Set(mMinExt, mMaxExt);

// prepare Matrix for DCS to WCS transformation

Matrix3d matWCS2DCS;

matWCS2DCS = Matrix3d.PlaneToWorld(vp.ViewDirection);

matWCS2DCS = Matrix3d.Displacement(

vp.ViewTarget - Point3d.Origin)

* matWCS2DCS;

matWCS2DCS = Matrix3d.Rotation(

-vp.TwistAngle, vp.ViewDirection,

vp.ViewTarget) * matWCS2DCS;

matWCS2DCS = matWCS2DCS.Inverse();

// tranform the extents to the DCS

// defined by the viewdir

mExtents.TransformBy(matWCS2DCS);

// width of the extents in current view

double mWidth;

mWidth = (mExtents.MaxPoint.X - mExtents.MinPoint.X);

// height of the extents in current view

double mHeight;

mHeight = (mExtents.MaxPoint.Y - mExtents.MinPoint.Y);

// get the view center point

Point2d mCentPt = new Point2d(

((mExtents.MaxPoint.X + mExtents.MinPoint.X) * 0.5),

((mExtents.MaxPoint.Y + mExtents.MinPoint.Y) * 0.5));

// check if the width ‘fits‘ in current window,

// if not then get the new height as

// per the viewports aspect ratio

if (mWidth > (mHeight * mScrRatio))

mHeight = mWidth / mScrRatio;

// set the viewport parameters

if (vp.Number == 2)

{

vp.UpgradeOpen();

// set the view height - adjusted by 1%

vp.ViewHeight = mHeight * 1.01;

// set the view center

vp.ViewCenter = mCentPt;

vp.Visible = true;

vp.On = true;

vp.UpdateDisplay();

ed.SwitchToModelSpace();

Application.SetSystemVariable("CVPORT", vp.Number);

}

if (vp.Number == 3)

{

vp.UpgradeOpen();

vp.ViewHeight = mHeight * 1.25;

//set the view center

vp.ViewCenter = mCentPt;

vp.Visible = true;

vp.On = true;

vp.UpdateDisplay();

ed.SwitchToModelSpace();

Application.SetSystemVariable("CVPORT", vp.Number);

}

}

}

}

}

}

tr.Commit();

}

}

cad.net修改视口比例

时间: 2024-10-19 02:09:53

cad.net修改视口比例的相关文章

如何将CAD中的视口更改为两个水平视口?

如何将CAD中的视口更改为两个水平视口?在编辑CAD图纸的时候建筑工程师们都是借助CAD编辑器来进行绘制的,但是编辑完都需要在次进行查看,但是为了查看方便我们需要把编辑器的视口更改为两个视口,为了更加的方便对照两张CAD图纸的区别,那如何将CAD中的视口更改为两个水平视口?具体要怎么来进行操作?下面就一起来看看具体操作步骤吧? 第一步:首先打开常用的电脑,移动鼠标任意的打开一个浏览器,在浏览器的搜索框中搜索迅捷CAD编辑器,然后进入官网,点击下载安装最新版本的CAD编辑器.安装完成之后,启动该软

CAD编辑器中如何设置为四个视口

在CAD中,有时候建筑设计师们为了查看多张或者是编辑多张CAD图纸的时候,为了操作更加的方便,就需要更改一下CAD编辑器的视口,需要将编辑器的操作窗口改为四个视口,但是在CAD编辑器中如何设置为四个视口呢?具体要怎么操作呢?下面小编就来和大家分享一下具体的操作步骤. 第一步:首先,大家在电脑中打开一个浏览器,然后在浏览器的搜索框中搜索迅捷CAD编辑器标准版,在搜索的下拉栏中鼠标点击进入下载界面中,接着点击下载安装CAD编辑器到电脑上面进行使用. 第二步:接下来,将CAD编辑器安装完成之后,移动鼠

CAD快捷键

一.绘图命令 直线:L 用法:输入命令L/回车/鼠标指定第一点/输入数值(也就是指定第二点)/回车(这时直线就画出来了)/回车(结束命令) 射线:RAY 用法:输入命令RAY/回车/鼠标指定射线起点/指定通过点/回车(结束命令) 构造线:XL 用法:输入命令XL/回车/鼠标指定构造线起点/指定通过点/回车(结束命令) 多段线:PL 用法1:同直线命令 用法2:输入命令PL/回车/指定起点/输入W(绘制带有宽度的线)/回车/指定线起点宽度/回车/指定线结束点宽度/回车/输入数值(线的长度值)/回车

图片转CAD最简单的方法用这个

想要将一张图片转换成CAD进行修改编辑该怎么办,如何操作?将图片转换成CAD可以帮助我们的了解图片各元素的信息,并且根据图片制作自己想要的CAD文件,那么图片转换CAD怎么转? 1.首先,请将迅捷CAD编辑器(官网下载:http://cad.xjpdf.com)下载安装到电脑上,借助于这款CAD编辑软件,我们可以完成图片转CAD工作. 2.软件下载安装完成后,请点击打开进入软件的操作界面中,然后点击文件--打开,添加要转换的图片文件. 3.在迅捷CAD编辑器中打开图片文件后,请在软件左上方菜单栏

NGUI 指定视口大小

由于只是给Uinty开发插件,对Unity没有系统的学习,对Unity的很多功能都不是非常了解,幸得其他Unity同事的耐心教导,才不至于想崩头.记录一下,避免重复犯错. NGUI可以建立指定视口大小的摄像机,只要新增2D UI或者3D UI,就可以通过修改UI的大小,达到修改视口大小的目的 新建UI的方法:NGUI-> Create->2D UI/3D UI P.S: 摄像机属性Culling Mask要设成Everything,不然啥都看不到哦

NSIS作品:CAD字体安装工具

功能说明: 谨写此工具用以辅助安装CAD字体.程序附带的文件夹中是从"探索者"官方网站下载的"探索者"字体以及常用的"HZTXT". 程序特色: 1.您可以自行收集字体文件到文件夹内,以方便下一次的字体安装:2.运行程序时,程序将自动搜寻已安装的AutoCAD字体目录并询问是否选择此路径(为适应多版本,故做此设计). 注意事项: 1.仅AutoCAD能自动搜寻字体目录,其它公司出品的CAD,首次运行需要手动选择路径:2.在程序目录下若有与程序同名

CAD字体安装工具

功能说明: 谨写此工具用以辅助安装CAD字体.程序附带的文件夹中是从"探索者"官方网站下载的"探索者"字体以及常用的"HZTXT". 程序特色: 1.您可以自行收集字体文件到文件夹内,以方便下一次的字体安装: 2.运行程序时,程序将自动搜寻已安装的AutoCAD字体目录并询问是否选择此路径(为适应多版本,故做此设计). 注意事项: 1.仅AutoCAD能自动搜寻字体目录,其它公司出品的CAD,首次运行需要手动选择路径: 2.在程序目录下若有与程序

PDF还可以这样来转换成DWG格式!CAD文档编辑技巧

可能大家比较熟悉的格式转换模式是pdf转word或word转pdf,那你知道pdf怎么转换成dwg格式的文件吗?由pdf转cad后可以编辑吗?答案毫无疑问是肯定的.具体该怎么操作呢?今天小编就和大家分享:pdf怎么转换成dwg格式以及cad如何修改图层颜色的方法. 一.pdf怎么转换成dwg格式 我这里使用的是[迅捷cad编辑器],它可以直接将文档另存为各个版本的cad图纸(包括了dwg.dxf格式),或者是jpg.gif等格式. 1.首先你需要使用迅捷cad编辑器打开需要转换格式的pdf文件,

CAD技巧—CAD中打印CAD图纸怎么设置成纵向?

在CAD行业中,大家都知道我们最常见的就是CAD图纸,但是CAD图纸都是dwg格式的,有的时候我们为了查看方便需要把CAD图纸文件进行打印出来,但是如果我们在进行打印的时候想要把CAD图纸打印设置成纵向,具体要怎么操作?CAD中打印CAD图纸怎么设置成纵向?下面小编就来教教大家在迅捷CAD编辑器标准版中打印CAD图纸怎么设置成纵向.想要了解的朋友就一起来看看吧! 第一步:在电脑中打开一个浏览器,在浏览器的搜索框中搜索迅捷CAD编辑器标准版,然后进入迅捷CAD官网,点击下载安装最新版本的迅捷CAD