- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在任意位置有两个对象,我想在一个和另一个之间绘制一个圆柱体。搜索数学解决方案告诉我我需要点积和叉积分别作为角度和轴,但是我无法生成四元数或将结果转换为 rotate
的参数。 .
这是我到目前为止:
function dot (v1, v2) = [v1[0] * v2[0], v1[1] * v2[1], v1[2] * v2[2]];
function normalize (v) = v / norm(v);
function distance (v1, v2) = sqrt(
pow(v2[0] - v1[0], 2) +
pow(v2[1] - v1[1], 2) +
pow(v2[2] - v1[2], 2)
);
function lookAt(v1, v2) =
let(n1 = normalize(v1))
let(n2 = normalize(v2))
let(v = dot(n1, n2))
let(angle = [acos(v[0]), acos(v[1]), acos(v[2])])
let(axis = normalize(cross(n1, n2)))
[0, 0, 0]; // I don't know what to return here
module cylTo(v1, v2) {
translate(v1)
rotate(lookAt(v1, v2))
cylinder(distance(v1, v2), 2);
}
v1 = [-33, -20, 22];
v2 = [20, 20, -20];
// Draw sphere 1
translate(v1)
sphere(10);
// Draw sphere 2
translate(v2)
sphere(10);
// Draw cylinder between the two
cylTo(v1, v2);
rotate()
需要什么所以一个
cylinder()
指向另一个对象?
最佳答案
我找到了一个简单的解决方案,可以在两点之间近似一个圆柱体,但它并不准确,因为它产生了一个药丸(带有圆形末端),而不是一个具有扁平末端的圆柱体。
// Draw cylinder between the two
hull() {
translate(v1)
sphere(2);
translate(v2)
sphere(2);
}
关于math - OpenSCAD:如何从矢量到矢量绘制圆柱体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50869080/
有没有办法将 STL 文件导入 OpenSCAD 并能够修改它们? 例如,以下代码演示了我迄今为止的尝试: difference() { import("spherical_puzzle_ba
我是 openscad 的新手,并试图从 dxf 文件制作 3d 模型。我想将其大小指定为 130x130。我已经能够得到下面的代码,但它仍然没有断言我想要的大小: linear_extrude(he
我注意到 OpenSCAD 文档没有阐明术语“对象” 和“节点” 是否指的是同一事物。对象是 defined作为“积木”,“由 2D 和 3D 基元创建”并以分号结尾 另一方面 nodes由变换操作(
我在 OpenScad 中的 If 语句有问题。 我有 4 个变量 a=20; b=14; w=1; c=16; 我想查一下女巫号是否更大a或 b . 然后根据谁较小来获取较小变量的值(在我们的例子中
是否有一种简单的方法/功能来为openscad对象倒圆角? e.g. round the edges of the cylinders 最佳答案 minkowski() 是您的 friend ,可以对
我正在尝试绘制这个(空心)形状: 这些圆圈实际上是不同的直径,我想像这样在连接管的中间缩颈(但这不是必需的)。我可以通过逐段绘制来伪造形状,但我在缩颈时遇到了问题,而且感觉不像 OpenSCAD 想要
以下代码围绕原点旋转第二个立方体。如何围绕其中心点([5,5,0])旋转第二个立方体? cube([10,10,1]); rotate([0,0,45]) cube([10,10,1]); 最佳答案
我是 OpenSCAD 的新手,遇到了一个我不明白的问题。在以下代码段中,变量“ofs”不是从“for”迭代的先前值累积的。 slots = [5, 7, 11, 17]; ofs = 0; for
我是 OpenSCAD 的新手,遇到了一个我不明白的问题。在以下代码段中,变量“ofs”不是从“for”迭代的先前值累积的。 slots = [5, 7, 11, 17]; ofs = 0; for
openscad 是否有任何用于字符串键控关联数组的语言原语(又名 HashMap ,又名字典)?或者是否有任何关于如何模拟关联数组的约定? 到目前为止,我所能想到的就是使用向量并使用变量将索引映射到
OpenSCAD 输出的透明度可以通过添加 % 来实现到元素,但这不允许将透明元素放在具有更高透明度(例如,以百分比表示)的周围元素中,并且可以在透明元素内看到透明元素中的(不透明)元素。怎么做? 最
我在任意位置有两个对象,我想在一个和另一个之间绘制一个圆柱体。搜索数学解决方案告诉我我需要点积和叉积分别作为角度和轴,但是我无法生成四元数或将结果转换为 rotate 的参数。 . 这是我到目前为止:
我不小心遗漏了翻译向量中的方括号。 OpenSCAD 没有引发错误,而是默默地忽略了该错误。 带有多个参数的translate()有什么特殊含义吗?第二行应该做什么?我附上了一张显示我得到的结果的图片
openScad上有类似的东西吗? list = [2, 3]; if(1 in list){ echo("in"); }else{ echo("not in"); } /* or bette
在过去的几天里,我对使用基于编程语言的软件创建 3D 模型的想法产生了兴趣。我一直在玩的一种语言是 OpenSCAD,事实证明它对创建有趣的形状非常有帮助。 我目前正在尝试使用 OpenSCAD 创建
在 OpenSCAD 中,我希望能够创建一个 module接受 string然后创建一个 3-D 对象,将该字符串作为 text 嵌入表面中。 .我希望对象比 text 稍大,所以我需要知道 text
我经常尝试连接不同的点以在 OpenScad 中绘制 直线。但我找不到任何方法来画线。但我可以画出确定的形状,如立方体、球体、圆柱体等......所以请指导我进入正确的程序编码,通过连接不同的点来绘制
我不小心遗漏了翻译向量中的方括号。 OpenSCAD 没有引起错误,而是默默地忽略了错误。 有多个参数的translate()有什么特殊含义吗?第二行应该做什么?我附上了一张图片,显示了我得到的结果。
我怎样才能弯曲一张纸(立方体)?我想控制弯曲/曲线的角度。 例如 立方体([50,50,2]); 最佳答案 您可以 rotate_extrude()一个带有参数角的矩形。这需要 openscad 版本
我试图在 Windows 7 中通过命令提示符运行 OpenScad。但是我无法让它工作。我将以下目录添加到路径 "C:\Program Files\OpenSCAD\" 并尝试运行以下脚本: fro
我是一名优秀的程序员,十分优秀!