- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
您好,我想使用 Fisheye Distortion plugin对于我在 d3.js 中的力导向图,但是当我想应用这个插件时,图的行为很奇怪。我是 d3.js 的新手,不擅长计算机图形学。
var fisheye = d3.fisheye.circular()
.radius(200)
.distortion(2);
// graph - variable which represents whole graph
graph.svg.on("mousemove", function() {
fisheye.focus(d3.mouse(this));
d3.select("svg").selectAll("circle").each(function(d) { d.fisheye = fisheye(d); })
.attr("cx", function(d) { return d.fisheye.x; })
.attr("cy", function(d) { return d.fisheye.y; })
.attr("r", function(d) { return d.fisheye.z * 4.5; });
d3.select("svg").selectAll("line").attr("x1", function(d) { return d.source.fisheye.x; })
.attr("y1", function(d) { return d.source.fisheye.y; })
.attr("x2", function(d) { return d.target.fisheye.x; })
.attr("y2", function(d) { return d.target.fisheye.y; });
});
奇怪的行为我的意思是图形的节点在鼠标悬停操作后消失(隐藏)。
最佳答案
问题是您使用代码将 cx
和 cy
添加到圆圈中,但您的圆圈实际上包含在 nodeElements
中被转换
到位。
因此,将鱼眼代码更改为以下内容即可解决问题:
graph.svg.on("mousemove", function() {
fisheye.focus(d3.mouse(this));
// Change transform on the .node
d3.select("svg").selectAll(".node")
.each(function(d) { d.fisheye = fisheye({ x: graph.x(d.x), y: graph.y(d.y) }); console.log(d.fisheye, d); })
.attr("transform", function (d) { return "translate(" + d.fisheye.x + "," + d.fisheye.y + ")"; })
// Now change the 'r'adius on the circles within
// One can also scale the font of the text inside nodeElements here
.select("circle")
.attr("r", function(d) { return 15 * graph.nodeSizeFactor * d.fisheye.z; });
d3.select("svg").selectAll("line")
.attr("x1", function(d) { return d.source.fisheye.x; })
.attr("y1", function(d) { return d.source.fisheye.y; })
.attr("x2", function(d) { return d.target.fisheye.x; })
.attr("y2", function(d) { return d.target.fisheye.y; });
});
请注意,我还为 transform
属性和 15 * 应用了适当的比例
表示圆的半径(而不是 graph.x
和 graph.y
graph.nodeSizeFactor4.5
)。
关于javascript - Fisheye Distortion 插件的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26742902/
在Crucible中,我使用高级搜索。 我尝试为未审查的指定用户选择所有提交。 以下查询: select revisions from dir / where (on branch master or
我正在努力使用 FFMPEGs 重映射过滤器。我有一个安全摄像头,可以传输一堆不同的选项,但默认是这个 FishEye: 我看到大量 Ricotah Theta 的 map ,但没有任何东西可以告诉我
语境 我有一个功能请求表示为带有句柄的 JIRA 问题 PRJ-11 .我的问题有一个带有句柄的子任务 PRJ-23 . JIRA 安装了最新的 FishEye 和 FishEye 插件并启用了智能提
我正在尝试使用OpenCV扭曲鱼眼图像。我从相机的内部存储器中获得了相机矩阵和失真系数。我假设它们是准确的。如您在下面的代码中看到的,我正在使用cv::fisheye::undistortImage。
我想在图像上投影一个点(-1450,-1660) 我正在使用opencv 4.0.1 c++ 我有相机矩阵和失真系数 我的代码是 vector inputpoints; Point3
我正在使用此功能消除鱼眼相机的图像失真,结果非常好,但我找不到减少失真的倾斜系数。 对于没有鱼眼的相机,我使用: getOptimalNewCameraMatrix 其中 alpha 可以控制结果从
您好,我想使用 Fisheye Distortion plugin对于我在 d3.js 中的力导向图,但是当我想应用这个插件时,图的行为很奇怪。我是 d3.js 的新手,不擅长计算机图形学。 comp
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve thi
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在尝试创建鱼眼效果,但我不熟悉 cv2.fisheye.undistortImage() 和 cv2.fisheye.undistortPoints()。这是我的代码: import cv2 im
我想为 140 度鱼眼镜头编写相机校准。由于 opencv 的正常校准不适用于这些镜头,我发现 calib3d 包中似乎有一个 cv::fisheye 模块。 但每次我尝试编译我的代码时,g++ 状态
有没有人给表格列赋予“鱼眼”效果?我在谈论将鼠标悬停在表格列上时表格列的扩展效果。如果有人尝试过,我很乐意看到一些代码。 编辑:...或 Accordion 效果 最佳答案 它不是用于表格,但效果如下
我一直在尝试寻找一种方法来使用 CSS 或任何其他方式创建类似于下图的效果。在 Photoshop 中,您可以变换选区的网格。我尝试在包含文本的 div 上使用 border-radius: 10%/
使用 Subversion、JIRA 和 fisheye 时,编辑日志消息以修复 JIRA 编号非常容易。使用 git,不是那么多。一旦将提交推送到共享存储库,修改提交就会很麻烦。 如果有人输入错误和
我们已经决定使用 Jira 和 Confluence,现在正在寻找其他可以让我们的生活更轻松的 Atlassian 工具。 我知道 FishEye 允许对源代码存储库进行各种可视化,而 CVS 的 n
我正在使用 OpenCv 2.4.10 (C++ API) 中的 fisheye::calibrate() 函数来校准鱼眼相机。当我对针孔相机使用标准 cv::calibrateCamera() 函数
我很好奇,对于将问题/触及的文件列表自动化到汇合页面的过程,良好的自动化工作流程会是什么样子。我在这里描述我当前的想法: 使用 REST 从 JIRA 获取符合我的请求的所有问题(完成) 使用 Fis
从 Crucible 版本 4.2.1 开始,没有对 Kotlin 文件的内置语法高亮支持。我已经填写了feature request为此。 然而,目前唯一的可能是添加自定义语法配置,如 here 所
我们目前使用 Atlassian JIRA 来处理缺陷和常规开发周期。我们使用 SVN Repository 来维护代码。我们最近做的一件事是使用 SVNKit 1.7.4 和 Atlassian F
我有大量用鱼眼镜头拍摄的照片。因为我想对照片进行一些图像处理(例如边缘检测),所以我想消除严重影响结果的桶形失真。 经过一些研究和大量阅读文章后,我发现了这个 page : 他们描述了一种算法(和一些
我是一名优秀的程序员,十分优秀!