我正在Three.js制作绘画程序。我可以在各种轴上画线,并可以旋转它们。好到目前为止
我需要的是一个模式,以便在鼠标绘制新线时沿其中一个轴添加到一条线(source_line)。我只是在学习图形编程,并且不确定正确的方法。我已经查看了一些示例,但没有看到很多关于从鼠标事件到其他对象的动态绘制顶点。
将鼠标绘制放在source_line顶点附近的最佳方法是什么(与mouse.unproject(相机)确定的相比)?我是否在onmousemove(通过距离向量)期间编辑近/远距离参数或翻译鼠标向量?在这个小提琴中,你可以看到我告诉new_line顶点是如何从source_line z设置开始的 - 它可以工作'但是我知道它不是正确的方法。
http://jsfiddle.net/cindy/zc34qn59/2/
//in mousedown
if (DRAWMODE){
bIsDrawing=true;
if ( currentIntersectedPoint !== undefined ) {
//yes, we have an object of interest/ source_line to add to
initNewLine(currentIntersectedPoint, false);
}else{
initNewLine(mouse, true);
}
或者,我会计算source_line的整个边界框,得到法线并可能做一些事情,比如把光标转到一个沿着source_line轴垂直倾斜的平面(就像Tilt画笔似乎那样)?
任何指针(哈哈双关语)都表示赞赏