线程评级:
导入的SVG比例错误
# 1
附加的SVG文件是100x100mm,附加的STL是100x100x3mm,但是当我导入它们并将它们堆叠在一起时,SVG看起来更小了。(我还使用SVG来测试API中的Cam2D函数,同样得到的指示是,它比它应该的要小,并且没有按照预期的居中)。

我使用的是x86 Ubuntu 22.0, RoboDK v5.4.1(64位)。

再次尝试附加文件。


附加文件
. zip 100年mm.zip(大小:650字节/下载:55)2022世界杯国家队名单
如果我使用linux“convert”(ImageMagick 6)将SVG转换为PNG, RoboDK会更准确地渲染PNG,尽管ArUco标签仍然显示约1-2mm的错误。对于测试渲染器的准确性来说,这是一个不错的方法,所以如果你有OpenCV或其他方法从April / ArUco标签中获得姿态,你可以考虑将它添加到你的测试套件中。
# 3
RoboDK在某些情况下可能无法正确检索图像的大小,例如当您加载共享的SVG图像时。一个解决办法是使用PNG文件代替(正如你提到的)。如果你想要更好的分辨率,你可以加载一个更大的图像,然后使用缩放选项将其缩小。

另一种选择是在加载图像后缩放图像对象以获得所需的大小。例如,一旦你在RoboDK中加载图像作为对象,你可以检索相应的大小和比例:
代码:
my_desired_width = 100 #设置所需的图像宽度,单位为mm
进口json

#获取当前宽度并计算比例
img_size = object.setParam("BoundingBox")
img_size = JSON .loads(img_size) #将JSON格式的字符串转换为字典
Scale = my_desired_size / img_size['max'][0]

#你也可以提供一个每轴的比例
object.Scale(规模)




浏览此线程的用户:
1客人(年代)