需要一个视觉模型可以做分割任务 像yolo-seg那种,但是yolo的基础模型还是能识别的太少了

把分类框信息发给大语言模型让语言模型选择指定接口 

主要问题就是从视觉得到的几何信息,空间信息,分类信息太少

你要真的把霍尔识别得到的线拿来处理,像那种直接transformer的就没连llm

ScaleCUA: Scaling Open-Source Computer Use Agents with Cross-Platform Data - 2509.15221v1.pdf

搜索 | arXiv 预印本仓库 --- Search | arXiv e-print repository

[2509.15221] ScaleCUA:使用跨平台数据扩展开源 机使用代理 --- [2509.15221] ScaleCUA: Scaling Open-Source Computer Use Agents with Cross-Platform DataGUIDatasets[2509.15221] ScaleCUA:使用跨平台数据扩展开源 机使用代理 --- [2509.15221] ScaleCUA: Scaling Open-Source Computer Use Agents with Cross-Platform Data

OpenGVLab/ScaleCUA: ScaleCUA is the open-sourced computer use agents that can operate on corss-platform environments (Windows, macOS, Ubuntu, Android).

OpenGVLab/ScaleCUA-3B · Hugging Face --- OpenGVLab/ScaleCUA-3B · Hugging Face

可以看到这个saclecua3b是个vlm模型

SCALECUA_SYSTEM_PROMPT_GROUNDER = '''You are an autonomous GUI agent capable of operating on desktops, mobile devices, and web browsers. Your primary function is to analyze screen captures and perform appropriate UI actions to complete assigned tasks.

## Action Space
def click(
x: float | None = None,
y: float | None = None,
clicks: int = 1,
button: str = "left",
) -> None:
"""Clicks on the screen at the specified coordinates. The `x` and `y` parameter specify where the mouse event occurs. If not provided, the current mouse position is used. The `clicks` parameter specifies how many times to click, and the `button` parameter specifies which mouse button to use ('left', 'right', or 'middle')."""
pass

def doubleClick(
x: float | None = None,
y: float | None = None,
button: str = "left",
) -> None:
"""Performs a double click. This is a wrapper function for click(x, y, 2, 'left')."""
pass

def rightClick(x: float | None = None, y: float | None = None) -> None:
"""Performs a right mouse button click. This is a wrapper function for click(x, y, 1, 'right')."""
pass

def moveTo(x: float, y: float) -> None:
"""Move the mouse to the specified coordinates."""
pass

def dragTo(
x: float | None = None, y: float | None = None, button: str = "left"
) -> None:
"""Performs a drag-to action with optional `x` and `y` coordinates and button."""
pass

def swipe(
from_coord: tuple[float, float] | None = None,
to_coord: tuple[float, float] | None = None,
direction: str = "up",
amount: float = 0.5,
) -> None:
"""Performs a swipe action on the screen. The `from_coord` and `to_coord` specify the starting and ending coordinates of the swipe. If `to_coord` is not provided, the `direction` and `amount` parameters are used to determine the swipe direction and distance. The `direction` can be 'up', 'down', 'left', or 'right', and the `amount` specifies how far to swipe relative to the screen size (0 to 1)."""
pass

def long_press(x: float, y: float, duration: int = 1) -> None:
"""Long press on the screen at the specified coordinates. The `duration` specifies how long to hold the press in seconds."""
pass

## Input Specification
- Screenshot of the current screen + task description

## Output Format
<action>
[A set of executable action command]
</action>

## Note
- Avoid action(s) that would lead to invalid states.
- The generated action(s) must exist within the defined action space.
- The generated action(s) should be enclosed within <action></action> tags.'''
low_level_instruction = "Click the 'X' button in the upper right corner of the pop-up to close it and access the car selection options."

messages = [
    {
      "role": "system",
      "content":[
        {
          "type": "text",
          "text": SCALECUA_SYSTEM_PROMPT_GROUNDER,
        }
      ]
    },
    {
        "role": "user",
        "content": [
            {
                "type": "image",
                "image": "/path/to/your/image",
            },
            {"type": "text", "text": low_level_instruction},
        ],
    }
]

# Preparation for inference
text = processor.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
    text=[text],
    images=image_inputs,
    videos=video_inputs,
    padding=True,
    return_tensors="pt",
)
inputs = inputs.to("cuda")

# Inference: Generation of the output
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
    out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)

可能是个带位置识别的vlm模型




看看通一千文是怎么说的

你提供的内容是一个系统提示(SYSTEM_PROMPT),用于定义一个**自主GUI智能代理(Autonomous GUI Agent)**的行为规范。这类代理的目标是能够“看懂”屏幕截图,并根据任务描述,自动执行鼠标或触摸操作来完成任务,比如点击、滑动、拖拽等。

我们来逐段解释一下这个提示在“搞什么飞机”:


🧠 1. 角色定义


text

深色版本

You are an autonomous GUI agent capable of operating on desktops, mobile devices, and web browsers.

意思是:你是一个可以自动操作电脑桌面、手机设备、网页浏览器的“AI机器人”。它能像人一样看图、理解界面、然后动手操作。


🖱️ 2. 动作空间(Action Space)

这部分定义了这个AI可以执行的所有操作,相当于它的“手脚功能”:

动作 说明
click(x, y) 在屏幕坐标 (x, y) 处点击(支持左/右/中键,可多击)
doubleClick(x, y) 双击
rightClick(x, y) 右键点击
moveTo(x, y) 移动鼠标到某位置(不点击)
dragTo(x, y) 按住并拖拽到某位置
swipe(...) 手机/触摸屏上的滑动操作(上/下/左/右)
long_press(x, y) 长按某个位置若干秒

这些函数是这个AI的“能力清单”,它只能做这里面列出的操作。


📷 3. 输入说明


text

深色版本

- Screenshot of the current screen + task description

意思是:AI每次会收到一张当前屏幕截图,以及一个任务描述(例如:“打开设置”、“搜索Python教程”)。


💬 4. 输出格式


text

深色版本

<action>
[A set of executable action command]
</action>

AI必须以这种格式返回它要执行的动作,例如:


xml

深色版本

<action>
click(500.0, 300.0)
</action>

系统会解析这个标签里的代码并真正执行点击。


⚠️ 5. 注意事项

  • 不能执行无效操作(比如点击不存在的坐标)
  • 只能使用上面列出的动作
  • 输出必须包裹在 <action>...</action> 中

✅ 举个实际例子

假设任务是:

“在浏览器中点击搜索框”

AI看到截图后分析出搜索框在坐标 (400, 100),于是输出:


xml

深色版本

<action>
click(400.0, 100.0)
</action>

系统就会控制鼠标去点击那个位置。


🚀 这东西用在哪?

这类系统常见于:

  • 自动化测试(自动点点点)
  • 智能助手(帮用户操作App)
  • RPA(机器人流程自动化)
  • AI操控手机/电脑(如Adept、OpenAI的Operator项目)

🤔 总结:到底在“搞什么飞机”?

简单说:这是在训练一个AI,让它能像人一样看图识界面,并自动操作鼠标和键盘完成任务。

你给它的“眼睛”是截图,你给它的“大脑”是这个提示词,你给它的“手脚”是那些 clickswipe 函数。

所以它不是在“搞飞机”,它是在“搞自动化”✈️🤖


如果你想玩一下,可以想象一个任务,比如:

“在手机上向下滑刷新首页”

AI可能会输出:


xml

深色版本

<action>
swipe(direction="down", amount=0.3)
</action>

是不是很酷?😎





他这种只要ai动动脑子点一下就行了

我要让它画个放样 需要几何分析的

主要问题是视觉几何分析

几何分析可能得单独做

可能是视觉先识别是个放样特征然后去找底草图数据和顶草图数据

' ******************************************************************************
' C:\Users\chen\AppData\Local\Temp\swx4684\Macro1.swb - macro recorded on 09/19/25 by chen
' ******************************************************************************
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("前视基准面", "PLANE", 2.61186250190007E-02, 2.45693963258283E-02, -2.05067735397873E-02, False, 0, Nothing, 0)
Part.ClearSelection2 True
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstToRectEntity, swUserPreferenceOption_e.swDetailingNoOptionSpecified, False)
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstLineDiagonalType, swUserPreferenceOption_e.swDetailingNoOptionSpecified, True)
Dim vSkLines As Variant
vSkLines = Part.SketchManager.CreateCornerRectangle(-2.70983558860999E-02, -2.44963046172916E-02, 0, 3.95759683916951E-02, 2.96765838584168E-02, 0)
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("前视基准面", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("前视基准面", "PLANE", 0, 0, 0, True, 0, Nothing, 0)
Dim myRefPlane As Object
Set myRefPlane = Part.FeatureManager.InsertRefPlane(8, 0.06, 0, 0, 0, 0)
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("前视基准面", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.ClearSelection2 True
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("基准面4", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.SketchManager.InsertSketch True
Part.ClearSelection2 True
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstToRectEntity, swUserPreferenceOption_e.swDetailingNoOptionSpecified, False)
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstLineDiagonalType, swUserPreferenceOption_e.swDetailingNoOptionSpecified, True)
vSkLines = Part.SketchManager.CreateCornerRectangle(-8.31865365522384E-03, -1.07259864968521E-02, 0, 2.40688734269634E-02, 1.75989936342593E-02, 0)
Part.ClearSelection2 True
Part.SetPickMode
Part.SketchManager.InsertSketch True
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 8.69215358700735E-03, 5.12216193520076E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 8.69215358700735E-03, 0.112687562574417
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0.013038230380511, 0.122931886444818
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 1.73843071740147E-02, 0.26635242063044
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0.013038230380511, 0.163909181926424
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 8.69215358700735E-03, 8.19545909632122E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 3.07329716112046E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 4.09772954816061E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 8.69215358700735E-03, 3.07329716112046E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 4.09772954816061E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02

' Roll View
Dim swModelView As Object
Set swModelView = Part.ActiveView
swModelView.RollBy 0
boolstatus = Part.Extension.SelectByID2("草图3", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("草图4", "SKETCH", 0, 0, 0, True, 0, Nothing, 0)
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("草图3", "SKETCH", -2.70983558860999E-02, -2.44963046172916E-02, 0, False, 1, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("草图4", "SKETCH", -8.31865365522384E-03, -1.07259864968521E-02, 0.06, True, 1, Nothing, 0)
Part.FeatureManager.InsertProtrusionBlend False, True, False, 1, 0, 0, 1, 1, True, True, True, 0.001, 0.001, 0, True, True, True
boolstatus = Part.Extension.SelectByID2("基准面4", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.BlankRefGeom
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0.013038230380511, -3.07329716112046E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 2.17303839675184E-02, -5.12216193520076E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 3.91146911415331E-02, -8.19545909632122E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 2.17303839675184E-02, -4.09772954816061E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0.013038230380511, -4.09772954816061E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 8.69215358700735E-03, -4.09772954816061E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -3.07329716112046E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, -1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 0.020488647740803
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 0
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 4.34607679350368E-03, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02
Set myModelView = Part.ActiveView
myModelView.RotateAboutCenter 0, 1.02443238704015E-02

' Roll View
Set swModelView = Part.ActiveView
swModelView.RollBy 0

' Zoom In/Out (MouseWheel)
Set swModelView = Part.ActiveView
swModelView.Scale2 = 3.57925623516188
Dim swTranslation() As Double
ReDim swTranslation(0 To 2) As Double
swTranslation(0) = 1.53131275040127E-02
swTranslation(1) = 0.018910915103079
swTranslation(2) = -0.079353599675835
Dim swTranslationVar As Variant
swTranslationVar = swTranslation
Dim swMathUtils As Object
Set swMathUtils = swApp.GetMathUtility()
Dim swTranslationVector As MathVector
Set swTranslationVector = swMathUtils.CreateVector((swTranslationVar))
swModelView.Translation3 = swTranslationVector

' Zoom In/Out (MouseWheel)
Set swModelView = Part.ActiveView
swModelView.Scale2 = 4.31235690983359
ReDim swTranslation(0 To 2) As Double
swTranslation(0) = 0.05462730171478
swTranslation(1) = 3.03018785571782E-02
swTranslation(2) = -9.56067465973916E-02
swTranslationVar = swTranslation
Set swMathUtils = swApp.GetMathUtility()
Set swTranslationVector = swMathUtils.CreateVector((swTranslationVar))
swModelView.Translation3 = swTranslationVector

' Zoom In/Out (MouseWheel)
Set swModelView = Part.ActiveView
swModelView.Scale2 = 3.59363075819466
ReDim swTranslation(0 To 2) As Double
swTranslation(0) = 5.30658414910951E-02
swTranslation(1) = 2.52515654643152E-02
swTranslation(2) = -7.96722888311597E-02
swTranslationVar = swTranslation
Set swMathUtils = swApp.GetMathUtility()
Set swTranslationVector = swMathUtils.CreateVector((swTranslationVar))
swModelView.Translation3 = swTranslationVector

' Zoom In/Out (MouseWheel)
Set swModelView = Part.ActiveView
swModelView.Scale2 = 2.99469229849555
ReDim swTranslation(0 To 2) As Double
swTranslation(0) = 5.17646246380244E-02
swTranslation(1) = 2.10429712202626E-02
swTranslation(2) = -6.63935740259664E-02
swTranslationVar = swTranslation
Set swMathUtils = swApp.GetMathUtility()
Set swTranslationVector = swMathUtils.CreateVector((swTranslationVar))
swModelView.Translation3 = swTranslationVector

' Zoom In/Out (MouseWheel)
Set swModelView = Part.ActiveView
swModelView.Scale2 = 2.49557691541296
ReDim swTranslation(0 To 2) As Double
swTranslation(0) = 5.06802772604655E-02
swTranslation(1) = 1.75358093502189E-02
swTranslation(2) = -0.055327978354972
swTranslationVar = swTranslation
Set swMathUtils = swApp.GetMathUtility()
Set swTranslationVector = swMathUtils.CreateVector((swTranslationVar))
swModelView.Translation3 = swTranslationVector

' Zoom In/Out (MouseWheel)
Set swModelView = Part.ActiveView
swModelView.Scale2 = 2.0796474295108
ReDim swTranslation(0 To 2) As Double
swTranslation(0) = 0.049776654445833
swTranslation(1) = 1.46131744585157E-02
swTranslation(2) = -4.61066486291434E-02
swTranslationVar = swTranslation
Set swMathUtils = swApp.GetMathUtility()
Set swTranslationVector = swMathUtils.CreateVector((swTranslationVar))
swModelView.Translation3 = swTranslationVector
End Sub

GUIDatasets

hybrid:混合

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐