使用fabric.js和canvas在Line上设置固定高度

苏里亚·普拉卡什(Surya Prakash G)

我正在使用fabric.js创建画布项目。我已经使用框架创建了一行。但是,有一种方法可以在线路上设置固定长度。原因是,该线是可拖动的并且会延伸。

line = makeLine([250,125,250,175]),

科伦达

评论变得非常复杂,所以我们总结一下:

这是简单情况的解决方案:

在您的http://jsfiddle.net/sprakashg/rbhhP/中,您有几行是这样的:

var p = e.target;
p.line1 && p.line1.set({ 'x2': p.left, 'y2': p.top });

在这里,line1是您的线,p也是您的圆。

您可以计算线的初始长度并将其存储。接下来,您可以计算当前的线方向,从line.p1position of p现在,如果您将此方向归一化并乘以初始线长,您将获得新的方向,指向您的圆,但保持初始线长。将其添加到行首,可以将此值存储在中p.line1.set()

如果两条直线连接一条直线,则可以使用此功能,但是如果一条直线连接的直线很少,则将无法移动它。

更复杂情况的解决方案:

在您的Stickman情况下,您不能移动膝盖,因为只有另一个点可以满足您的线条长度限制。在这种情况下,我将向模型添加一个简单的层次结构。

如果您假设某个Circle对象是模型的根,那么所有其他对象都是某个模型树的叶子和分支。现在,当您移动某个圆时,您应该仅针对将其与相连的直线进行上述计算parent

然后,您可以采用模型层次结构中下面的所有圆,并以与移动主圆相同的量移动圆Circle

通过这种方法,当您尝试移动膝盖时,您的骨盆-膝盖线将随鼠标移动,但要保持其长度(如您所愿)。但是在膝盖运动期间,腿的其余部分将以相同的量运动,因此实际上,您还将保持膝盖-踝关节线的长度。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在localhost上使用Fabric

来自分类Dev

使用Fabric在Twitter上撰写或共享图像

来自分类Dev

尝试在Prem上使用Service Fabric PublishProfiles

来自分类Dev

fabric.js不使用SVG文件导出Canvas

来自分类Dev

结合使用LocalDB和Service Fabric

来自分类Dev

使用Fabric和Pipenv运行python脚本

来自分类Dev

Fabric.js-重建和商业使用

来自分类Dev

使用mouse:Fabric JS:覆盖动画对象

来自分类Dev

使用fabric.js的全屏画布模式

来自分类Dev

使用Fabric JS定义标记的行

来自分类Dev

如何使用fabric.js测量折线?

来自分类Dev

使用Fabric.js选择画布上的所有对象

来自分类Dev

使用fabric.js在画布上免费绘制

来自分类Dev

SVG无法使用Fabric.js在画布上正确渲染

来自分类Dev

使用fabric.js更改画布上的绘图光标

来自分类Dev

如何使用Fabric JS中的英寸和毫米等单位

来自分类Dev

使用Fabric.js启用和禁用画布的鼠标事件

来自分类Dev

初始加载后使用Fabric.js修改fabric.Image.fromURL

来自分类Dev

使用Fabric自动执行Django设置:如何编辑Django设置?

来自分类Dev

使用设置(用户='用户')在Fabric中切换用户

来自分类Dev

如何使用 Vue js 使 Fabric js 具有反应性?

来自分类Dev

使用链码在 HyperLedger Fabric 上创建令牌

来自分类Dev

从架构外部使用Service Fabric CommunicationClient和servicePartitionClient?

来自分类Dev

从架构外部使用Service Fabric CommunicationClient和servicePartitionClient?

来自分类Dev

无法使用 Fabric 初始化 Twitter 和 Crashlytics

来自分类Dev

如何使用Fabric.js实现画布平移

来自分类Dev

使用Fabric.js进行交互式绘图

来自分类Dev

使用Fabric.js桥接文本效果

来自分类Dev

使用Fabric.js以编程方式创建和选择组

Related 相关文章

热门标签

归档