autocad中region与boundary命令有啥区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了autocad中region与boundary命令有啥区别?相关的知识,希望对你有一定的参考价值。

1.region:是面域的命令,简写REG,可以将封闭的多段线,多边形,圆等线条转为面域(即线转平面),可为二维线转三维对象做准备。
2.boundary:是边界的命令,简写BO,是边界创建的,包括创建闭合多段线和面域的边界,侧重于边界线框,
两者是不一样的哟,呵呵
希望回答亲能满意,并及时采纳!有疑问再加球再联系追问

boundary命令中的孤岛检测是什么意思?boundary中有一个选择面域/多段线选项,是不是就是说boundary命令既能创建面域也能创建闭合的多段线?谢谢

追答

孤岛:是闭合区域的闭合区域,在边界中主要用于是否排除内部嵌套的闭合区域的边界。
选择面域或多段线:是提示操作者根据当前的情况选择要由谁来创建边界。是由多面域生成还是多段线生成。

参考技术A 有区别,一个是创建面,一个是创建线。
1.region:是面域的命令,简写reg,可以将封闭的多段线,多边形,圆等线条转为面域(即线转平面),为二维线转三维对象做准备。
2.boundary:是边界的命令,简写bo,是边界创建的,包括创建闭合多段线和面域的边界,侧重于边界线框。

通过 2 个关系搜索核心数据

【中文标题】通过 2 个关系搜索核心数据【英文标题】:Core data search through 2 relationships 【发布时间】:2013-03-13 15:30:30 【问题描述】:

我有 3 个实体:Person、Region 和 Boundary。边界具有“状态”属性。一个人可以有很多区域。一个区域可以有很多边界:

Person <<-->> Region <<-->> Boundary.state

对于 Person 实体,我想找出他有边界的所有状态。谓词可以进行这种搜索还是我需要进行嵌套搜索:

NSMutableArray *states = [NSMutableArray array];

for (Region *region in person.regions) 
    for (Boundary *boundary in region.boundaries) 
        // add state to array
    

编辑:

对不起,我不是数据库人,没想到他们是多对多关系:

Person<<-->>Region<<-->>Boundary

【问题讨论】:

有没有一个实体叫状态?您将能够使用谓词来获取一个人拥有的所有边界。从那里你可以计算出状态。 不,状态没有实体,只是边界实体中的一个属性。这可以解决吗?创建一个国家实体?它只会包含 1 个属性... 不,我会[回答。 @Fogmeister:我认为您的解决方案也会奏效。如果thePerson.regions 是一个大集合,它可能会不太有效。 - 不幸的是,问题的第一个版本具有误导性。 【参考方案1】:

谓词中的“ANY”集合运算符不适用于嵌套的一对多关系。您可以在此处使用 SUBQUERY:

[NSPredicate predicateWithFormat:@"SUBQUERY(regions, $r, ANY $r.persons == %@).@count > 0", thePerson]];

【讨论】:

是的,做到了!现在我要去一个角落,试着弄清楚它是如何工作的。谢谢!【参考方案2】:

要获取Person 拥有的所有Boundary 实体,您可以像这样使用NSFetchRequest...

NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Boundary"];

[request setPredicate:[NSPredicate predicateWithFormat:@"region.person = %@", thePerson]];

这将返回一个 Boundary 实体数组,其 Person 是您放入谓词中的那个。

那你就可以了……

NSSet *states = [NSSet setWithArray:[results valueForKey:@"state"]];

那么 states 将是 Person“拥有”的一组唯一状态。

随着多对多这种变化。

你可以为谓词做一些类似的事情......

[NSPredicate predicateWithFormat:@"ANY region IN %@", thePerson.regions];

...我认为这可能有效?

【讨论】:

(你更快,我已经放弃了我的答案:-) - 最后一步可以简化为NSArray *states = [results valueForKey:@"state"] 哈!现在看起来有点简单明了,谢谢!而且我想我应该提到边界可以有很多人。所以谓词将是@"Any region.person == %@", thePerson,对吧? @Log139:如果只有personregion 关系之一是一对多关系,那么这应该可以工作。如果两者都是多对多,则需要更复杂的谓词。 是的,它的多对多关系。一个Person可以有很多Region,一个Region可以有很多Person。一个 Region 可以有多个 Boundary,一个 Boundary 可以有多个 Region。 那你就卡住了。在这种情况下,您需要一个子谓词。您还需要更改问题中的图表,因为它不正确且具有误导性。

以上是关于autocad中region与boundary命令有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

cad求高人指点,输入region命令 显示不能创建面域 如图

CAD三维绘图的快捷命令

一种将Region转为Polyline的方法

通过 2 个关系搜索核心数据

AUTOCAD——坐标标注

AUTOCAD中图库管理演示,迅捷CAD工具箱