繁体   English   中英

Forge 查看器标记扩展可防止多种类型的工具

[英]Forge viewer markups extension prevent multiple types of tools

我们在编辑模式下以编程方式添加一个圆圈和一些文本,效果很好。 我们希望阻止用户向图层添加更多形状,但仍允许他们在画布周围移动圆圈和文本。 如果当前图层中已经存在该类型之一,是否有办法阻止画布绘制形状?

不幸的是,没有官方配置选项只允许选择/移动,并防止创建额外的标记。 您将不得不逆向工程并覆盖MarkupsCore扩展对象的一些事件处理方法。 例如, onMouseDown方法如下所示:

proto.onMouseDown = function(event) {
    dismissLmvHudMessage();
    this.callSnapperMouseDown();
    var bounds = this.getBounds();
    var mousePosition = this.getMousePosition();

    if (mousePosition.x >= bounds.x && mousePosition.x <= bounds.x + bounds.width && mousePosition.y >= bounds.y && mousePosition.y <= bounds.y + bounds.height) {
        this.editMode.onMouseDown(event);
    }

    if (!this.editMode.creating && event.target === this.svg) {
        this.selectMarkup(null);
    }
    this.ignoreNextMouseUp = false;
};

她,理论上您可以避免将“鼠标按下”事件传递到“编辑模式”,从而防止创建任何新标记。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM