【问题标题】:forge Viewer - How can you select dbId programmatically as it deselects the other selection automaticallyforge Viewer - 如何以编程方式选择 dbId,因为它会自动取消选择其他选择
【发布时间】:2020-06-10 23:37:55
【问题描述】:

在我的查看器中,我希望能够选择多个 dbid 并保存到数据库,但是通过 control-shift 我可以进行选择,但是稍后在检索时我可以使用 select([dbid array]) 进行显示,应该可以正常工作。但是,如果我想选择一个新的 dbid,每次都使用控件来选择新的 dbid 很痛苦,另一件事是我的事件处理程序(AGGREGATE_SELECTION_CHANGED_EVENT)我需要编写额外的代码来确定我选择的最新 dbid 是什么? 有什么建议可以轻松解决这个问题吗?

【问题讨论】:

    标签: autodesk-forge autodesk-viewer autodesk-model-derivative autodesk-data-management


    【解决方案1】:

    如果您想在以编程方式选择额外节点的同时保留当前选择,请尝试将当前选择的 dbid 与新节点连接起来:

    const currentSelection = NOP_VIEWER.getSelection()
    currentSelection.push(dbid)
    NOP_VIEWER.select(currentSelection)
    

    我需要编写额外的代码来识别我选择的最新 dbid 以及全部?

    是的,查看器不会跟踪您选择的顺序/时间戳,因此您需要自己管理。

    control-shift 我可以进行选择

    您可能还想了解点击行为设置以更改对象点击的默认行为:

    const config = {
            "click": {
                "onObject": ["selectOnly"],
                "offObject": ["deselectAll"]
            },
            "clickAlt": {
                "onObject": ["setCOI"],
                "offObject": ["setCOI"]
            },
            "clickCtrl": {
                "onObject": ["selectToggle"]
                // don't deselect if user has control key down https://jira.autodesk.com/browse/LMV-1852
                //"offObject": ["deselectAll"]
            },
            "clickShift": {
                "onObject": ["selectToggle"]
                // don't deselect if user has shift key down https://jira.autodesk.com/browse/LMV-1852
                //"offObject": ["deselectAll"]
            },
    }
    
    NOP_VIEWER.setCanvasClickBehavior(config)
    

    【讨论】:

    • 好的,这很棒。我喜欢这个例子中的想法forge-digital-twin.autodesk.io/#,这里我们不是“选择/突出显示”保存的 dbid,而是我们给出带有一些标签的箭头。同样在这里我观察到你不能做多选对象,因为看起来他们已经禁用了它。希望它是你上面解释的方式。这是真的吗?如果那怎么办?
    • “你不能做多选对象,因为看起来他们已经禁用了它”由用户或以编程方式?两者都是可能的...从用户端查看选择窗口示例here
    • @BryanHuang 我们如何以编程方式从多个模型中选择 dbId?
    猜你喜欢
    • 1970-01-01
    • 2014-04-05
    • 2016-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多