明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3363|回复: 11

关于Geometry.Extents的问题

[复制链接]
发表于 2014-5-18 21:49 | 显示全部楼层 |阅读模式
各位师兄好!我刚开始看C#二次开发,对于面向对象的很多概念很模糊
今天看了一段代码,遇到了Extent3d类。不知道是干什么的
Extented3d.AddExtents(ent.GeometryExtents),这一句是把实体的什么属性添加到类里了?
知道不应该在论坛上发这种菜鸟问题,但我确实努力找了
发表于 2014-5-19 08:19 | 显示全部楼层
Extent3d 表示一个长方体的形状的轮廓点,以X,Y,Z的最小值点和最大值点来描述
ent.GeometryExtents 就是包围一个图形实体的最小立方体轮廓
发表于 2014-5-19 08:26 | 显示全部楼层
Extents3d是一个结构,表示实体的外部包围盒(该包围盒不一定是最小的,而是长宽高和三个坐标系平行的),该结构的两个属性MaxPoint、 MinPoint 就是最小包围盒的最小值点和最大值点,可以确定这个包围盒(长方体)的外形
添加方法函数原型如下:
public void AddExtents(
    Extents3d source
);
就是将新的包围盒添加到这个结构体中,扩展包围盒,实际的效果是让MaxPoint更大,而MinPoint更小。
 楼主| 发表于 2014-5-19 09:09 | 显示全部楼层
师兄,刚才搜到了一个你以前回复过的问题。我正想加你。
请问如果是面,也用长方体来包围吗?另外请问长方体的下表面Z坐标都是一样的,那么所说的minPoint是指什么最小?
 楼主| 发表于 2014-5-19 09:10 | 显示全部楼层
本帖最后由 tmgczb 于 2014-5-19 15:04 编辑
cdinten 发表于 2014-5-19 08:26
Extents3d是一个结构,表示实体的外部包围盒(该包围盒不一定是最小的,而是长宽高和三个坐标系平行的),该 ...

师兄,刚才搜到了一个你以前回复过的问题。我正想加你。
请问如果是面,也用长方体来包围吗?如果是空间的图形,如我画的椭圆(平面和圆柱的交面),而且不止一个,那时候是不是用长方形来包围?
这时候不能保证长方形的边和坐标轴平行了吧?
这时候是不是椭圆的外接矩形呢?而这时候的minPoint指的是什么呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2014-5-19 09:57 | 显示全部楼层
sieben 发表于 2014-5-19 08:19
Extent3d 表示一个长方体的形状的轮廓点,以X,Y,Z的最小值点和最大值点来描述
ent.GeometryExtents 就是包围 ...

对于一个平面图形(如椭圆),也是用长方体来包围吗?
两外最小值点指的是X、Y、Z都最小吗?
发表于 2014-5-19 11:36 | 显示全部楼层
平面图形,平放的平面图形,都会有一个包围其的长方体轮廓,只不过这时的最大最小Z值相等
你是不是不会使用AutoCAD?
 楼主| 发表于 2014-5-19 14:54 | 显示全部楼层
对CAD确实不精通,但是学土木工程也有六年,画了不少建筑、结构图。
师兄,我说的椭圆不是水平的,而是像我画的这样(平面与圆柱相交得到的截面),而且是深度不同的多个椭圆。
Extents3d extents=new Extents3d;
extents.Add(ellipse.GeometricExtents);
我一是不明白对于一个椭圆,ellipse.GeometricExtents以及extents.minPoint指的什么?二是不明白Extents3d可以包围几个实体,后者说是不是可以包含几个实体的minPoint和maxPoint?
 楼主| 发表于 2014-5-19 14:56 | 显示全部楼层
本帖最后由 tmgczb 于 2014-5-19 15:00 编辑
sieben 发表于 2014-5-19 11:36
平面图形,平放的平面图形,都会有一个包围其的长方体轮廓,只不过这时的最大最小Z值相等
你是不是不会使用Au ...

对CAD确实不精通,但是学土木工程也有六年,画了不少建筑、结构图。
师兄,我说的椭圆不是水平的,而是像我画的这样(平面与圆柱相交得到的截面),而且是深度不同的多个椭圆。
Extents3d extents=new Extents3d();
extents.Add(ellipse.GeometricExtents);
我一是不明白对于一个椭圆,ellipse.GeometricExtents以及extents.minPoint指的什么?因为这时候即使画一个外接矩形,其右上角(或左下角)的三个坐标并不能保证同时最大(或小);
二是不明白Extents3d可以包围几个实体,后者说是不是可以包含几个实体的minPoint和maxPoint,第二句代码遍历,把不同椭圆的GeometricExtents都加入到Extents3d的实例extents中?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2014-5-19 15:42 | 显示全部楼层
一你错了,二你对了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-5 22:21 , Processed in 1.186701 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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