V-rep学习笔记:切削

V-rep学习笔记:切削

大家好,又见面了,我是你们的朋友全栈君。

  V-REP allows you to perform cutting simulations. The user can model almost any type of cutting volumes as long as they are convex (however you can always combine several convex cutting volumes to obtain a non-convex cutting volume). The scene objects that allow for this functionality are mills, which can cut cuttable entities. Following figures illustrates examples using mills:

V-rep学习笔记:切削

[Two cutting simulation examples]

  Mills will always have a convex cutting volume, however they can be combined to generate a non-convex cutting volume or more complex volumes. They cut parts of cuttable entities away that interferes with their cutting volume. By default, cuttable objects have their cuttable tag disabled. Refer to the object common properties to enable or disable individual object’s cuttable tag.

  Parts of cuttable objects that have been cut away will not be collidable, measurable, detectable or renderable anymore (but the remainder will). Depending on the size and complexity of cuttable objects, the cutting operation can be slowed down. The cutting speed is also linked to the cutting volume precision and the rate at which the cut is performed. Smooth cutting volumes usually perform better when the cutting is continuous (not a one-time cut). A too small cutting rate might also result in a slow-down due to the increasing size of the required calculation structure. The best is to test for the best cutting volume – cutting rate relationship.

  Cut objects can be reset to their initial state with the simResetMilling command. Changes can also be made permanent with the simApplyMilling command.The amount of cut surface/volume can be recorded by graph objects. Refer to graphs and graph data stream types for more information about how to record mill data.

 

   VREP中Mill只能对表面进行切削(不支持实体模型切削)。下面导入一个立方体STL网格模型,勾选其Cuttable属性:

V-rep学习笔记:切削

   然后添加一个Mill放在立方体上表面(刀具的切削体要进入立方体表面内),cutting volume可以设置成下面几种基本形状:

V-rep学习笔记:切削

  添加脚本控制Mill在立方体上表面移动,可以看到与刀具接触的面被移除:

V-rep学习笔记:切削

  仿真结束后被切削的对象会还原,如果要应用切削改变,可以使用simApplyMilling函数(Applies changes made during milling operations to a cuttable object)。

function sysCall_init()
    -- do some initialization here:

    millHandle = sim.getObjectHandle('Mill')

end

function sysCall_actuation()
    -- put your actuation code here
    
    -- Explicit handling
    --sim.handleMill(millHandle) 

    local position=sim.getObjectPosition(millHandle,-1)
    position[1]=position[1]+0.0001
    sim.setObjectPosition(millHandle,-1,position)
end



function sysCall_cleanup()
    -- do some clean-up here
end

 

 

 

 

参考:

Solid Mesh

Solid mesh for milling

Importing stl files as solid, non hollow objects

转载于:https://www.cnblogs.com/21207-iHome/p/9297104.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107419.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C语言socket[通俗易懂]

    C语言socket[通俗易懂]2.相关api介绍asocket函数:对创建套接字(的方法进行说明。#includesys/socket.hintsocket(intaf、inttype、intprotocol);af:地址的说明。仅支持AF_INET格式,即ARPA互联网地址格式。类型:指定套接字类型。新套接字的类型描述类型,如TCP(sock_stream)或UDP(sock_dgram)。常用的socket类型有SOCK_STREAM、SOCK_DGRAM、SOCK_RAW、SOCK_PACK

    2022年7月13日
    13
  • 源码网_论文管理系统源码

    源码网_论文管理系统源码1.LaTeX源码%-*-coding:UTF-8-*-\documentclass[UTF8]{ctexart}\usepackage{multicol}%数学包,这里没用到%\usepackage{amsmath}\usepackage{indentfirst}%添加作者信息\usepackage{authblk}\usepackage{graphicx}%设置…

    2025年7月11日
    3
  • 极值点,驻点,拐点的关系_求驻点

    极值点,驻点,拐点的关系_求驻点极值点极值点:一阶导数发生变号的点,对于导数不存在的点,分析其左导数和右导数的正负是否相同,相同则不是极值点;若不同则为极值点。极值点是该点的x坐标值,而极值是该点对应的y坐标值。驻点驻点:只是单纯地符合f’(xo)=0的点,导数不存在的点不是驻点。拐点拐点:二阶导数发生变号的点,对于二阶导数不存在的点,分析其左二阶导数和右二阶导数的正负是否相同,相同则不是拐点;若不同则是拐点。常用结论:1.只要f’(xo)=0,那么该点就是驻点。2.若f’(xo)=0,而f”(xo)≠0,该点一定是极值点

    2025年7月1日
    2
  • redis集群相关资料

    redis集群相关资料

    2021年9月14日
    55
  • html分页样式居中,bootstrap分页样式怎么实现?

    html分页样式居中,bootstrap分页样式怎么实现?bootstrap分页样式怎么实现?下面本篇文章给大家介绍一下bootstrap分页的实现。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。任何一个网页里面,我们都可以看到分页,不管是移动端,还是pc端,不管是下拉到下一页,还是按钮下一页,都需要分页支撑你的网站。这样首先,可以提高你的网站的访问效率;另外页面展现也更加好看,要不然,上百万的上千万的数据;显示估计一两个小时也显示不出…

    2022年7月17日
    12
  • django自定义用户认证_编写一个自定义异常类

    django自定义用户认证_编写一个自定义异常类前言如果我们不用使用drf那套认证规则,我们想自定义认证类,那么我们首先要知道,drf本身是如何定义认证规则的,也就是要查看它的源码是如何写的源码分析源码的入口在APIView.py文件下的di

    2022年7月31日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号