【问题标题】:Remove inside geometry of a model移除模型的内部几何图形
【发布时间】:2023-04-04 21:02:02
【问题描述】:

对于我目前正在进行的项目,我正在寻找一种快速简便的方法来摆脱房屋模型的内部几何形状。

这个房子模型里面有所有东西,地板、内墙、楼梯、厨房等等,但我想删除里面的所有几何图形,所以我基本上只剩下房子的“外壳”。说如果你将房子“淹没”在水下,我想保留所有被水接触的东西,其余的我想被移除(可能是一个奇怪的解释,但我希望我的意思很清楚)。

因为我需要在很多不同的房屋类型上执行此过程,手动执行此操作的工作量太大,因此我正在寻找一种可以快速完成此操作的方法。

我使用 3ds Max 进行建模,但不同软件(例如 Meshlab)中的解决方案也很好!

提前致谢,

Maik Bentlage,iBuild

【问题讨论】:

    标签: geometry 3dsmax autodesk meshlab 3ds


    【解决方案1】:

    这真的取决于每个房子是如何建造的。

    如果是分层方法,即房子是父母,里面的模型(厨房、地板……)是孩子,那么您可以轻松地使用一个简单的 MaxScript 来删除场景中的所有孩子(灵感来自 cgsociety 的 this thread):

    global meshes_list=#() 
    
    fn selecting_children ancestors = 
    ( 
    for i in ancestors do 
    (
        counting = i.children 
        if counting.count>0 then 
        (
            for x in counting do
            (
                append meshes_list x 
            )
        )
    )
    return meshes_list 
    )
    
    rollout hierarchy_rollout "Hierarchy Operations"
    (
    checkbox Checkbox_DeleteSelection "Delete Selection" checked:false 
    
    button select_children "Select All Children"
    on select_children pressed do 
    (
        select objects
        sel = selection as array 
        x = selecting_children sel 
        select x
    
        if Checkbox_DeleteSelection.state == true do 
        (   delete selection    )
    )
    )
    createDialog hierarchy_rollout 200 150
    

    请确保您最终不会同时删除其他网格或房屋!

    如果它们不是按层次排序的,那么您可以按名称选择(按 H)并手动删除所有内容,但比使用您的老鼠。

    如果整个房子是一个单个网格(包括里面的道具),那么我不知道有任何现有的方法可以自动删除里面的所有东西。您仍然可以按元素选择(将其转换为可编辑多边形/网格后),并在选择房屋后(假设它是单个网格),按 Ctrl + I反转选择并删除所有内容。但这仍然很耗时。
    一个解决方法可能是将每个房屋附加到一个巨大的网格中(只需打开附加列表以一次选择所有内容)并使用矩形选择 仅选择左侧或右侧线框视口中所有内容的最高部分(应隔离道具或其中大部分),然后按 Ctrl + I

    【讨论】:

      【解决方案2】:

      对于 MeshLab 解决方案,this blog entry 描述了一种使用环境光遮蔽来移除内部顶点的方法。在 MeshLab 2016.12:

      1. 滤镜 > 颜色创建和处理 > 环境光遮蔽

      2. 过滤器 > 选择 > 按顶点质量选择。使用滑块选择低质量值,即所有不可见的内部顶点(尝试最小 0,最大 0.1)。

      3. 过滤器 > 选择 > 删除选定顶点

      这不是一个完美的解决方案,但可能足以满足您的需求。如果您可以确定一个始终适用于您的模型的最大质量值,您可以轻松地编写脚本以进行批处理。

      【讨论】:

        猜你喜欢
        • 2016-09-02
        • 1970-01-01
        • 2012-08-28
        • 2014-06-07
        • 2013-11-18
        • 2019-08-22
        • 1970-01-01
        • 2021-11-21
        • 1970-01-01
        相关资源
        最近更新 更多