首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    图形编辑器开发:参考线吸附效功能,让图形自动对齐

    基于这些点的产生的水平线和垂直线,在靠近参照线时会吸附到最近的参照线上,分为水平移动和垂直移动两个维度。...大致有以下这几个操作: 遍历参照图形(在视口内,且不为被移动目标图形); 计算出它们的包围盒,得到 8 个点,3 条垂直线和 3 条水平线。...在一条垂直线上的多个点,其 x 值是相同的,y 不同,我们 x 作为 key,y 的数组为 value,保存到 hLineMap 映射对象中。...每一项代表一条垂直线; 水平线同理,保存在 vLineMap 中。 然后对这两个 map 的 key 保存到 sortedXs 或 sortedYs 数组中,并排序,方便之后二分查找提高查找效率。...最后是绘制参照线,以绘制垂直线为例。

    84461

    opencv-python介绍和商业应用

    但是,如果您希望在图像上绘制,则不需要Matplotlib。OpenCV为此提供了很好的方法。...从图像中提取和删除水平或垂直线这种用于删除水平或垂直线的图像处理技术具有大量实际用例。使用一些cv2函数,如侵蚀和扩张,我们可以识别和删除图像中任何大小的水平和垂直线。...边缘检测项目对于希望使用openCV快速获得结果的人来说,在图像中查找对象的边缘可能是一个具有挑战性和令人兴奋的项目。检测边缘对于预测物体的大小或您与所看到的物体之间的距离非常有用。...您还可以在视频源中包含此库,以自动将对象移近或移远目标。...库存管理和自动化产品列表在上面链接的那篇文章中,作为示例显示的产品使用对象检测和条形码读取功能,在拍摄和上传产品照片时自动在网站上列出自定义产品。

    1K40

    吸附设计:学会正确地贴贴

    所谓网格,指的是在图形所在的场景世界上,以原点出发按照特定的 x 和 y 间隔绘制出一条条直线,所构成的网格。我们把两条直线的交点叫做网格点。 网格吸附就是 让目标点吸附到最近的网格点上。...吸附算法很简单,找到距离目标点的 x 最近的两个网格点的 x 值:space * n 和 space * (n+1),取其中最近的。y 同理。...Figma 用钢笔工具绘制时,按住 Shift 会 强制做极轴追踪吸附。 参考线吸附(Reference Line) 参考线指的是一些水平或垂直线。然后我们要让目标点和其中最近的水平线和垂直线贴合。...吸附之间的冲突 不同的吸附类型如果做叠加,在某些场景下可能会发生冲突,需要选择合适的策略去处理的。 我们来看看几个场景。...3、网格吸附和正交同时开启 如果我在一个非网格点绘制了第一个点(参照点),然后开启网格吸附和正交,绘制第二个点(目标点)。

    36310

    一文读懂层次聚类(Python代码)

    当我们合并两个簇时,树状图会相应地记录这些簇之间的距离并以图形形式表示。...下面这个是树状图的原始状态,横坐标记录了每个点的标记,纵轴记录了点和点之间的距离: 当合并两个簇时,将会在树状图中连接起来,连接的高度就是点之间的距离。下面是我们刚刚层次聚类的过程。...然后开始对上面的过程进行树状图的绘制。从合并样本 1 和 2 开始,这两个样本之间的距离为 3。 可以看到已经合并了 1 和 2。垂直线代表 1 和 2 的距离。...同理,按照层次聚类过程绘制合并簇类的所有步骤,最后得到了这样的树状图: 通过树状图,我们可以清楚地形象化层次聚类的步骤。树状图中垂直线的距离越远代表簇之间的距离越大。...比如我们将阈值设置为 12,并绘制一条水平线,如下: 从交点中可以看到,聚类的数量就是与阈值水平线与垂直线相交的数量(红线与 2 条垂直线相交,我们将有 2 个簇)。

    3.3K31

    一种用于移动机器人自动识别电梯按钮的去除透视畸变方法

    角点检测方法包括两个部分。第一部分是按钮分割算法,该算法利用DeepLabv3 +模型进行特征提取并获得按钮分割结果。第二部分是角点坐标检测算法。在获得按钮分割结果之后,利用膨胀和腐蚀操作来减少噪声。...假设对于不变形的标准透视图按钮角点,水平线的斜率等于零,垂直线的斜率等于无穷大,水平线和垂直线之间的夹角的余弦值等于零。因此,对于矩阵E有: ?...第一个标准是每个按钮的水平线在空间坐标中的斜率。 ? ? 第二个准则是每个按钮的垂直线在空间坐标中的斜率。 ? ? 第三个条件是空间坐标中每个按钮的水平和垂直线的余弦值。 ? ?...在获得所有像素的新空间坐标点后,我们可以利用相机固有参数进行投影,并在归一化平面中获得新像素点。 最后,通过在相同类型的空白图像和变形图像之间应用逆变换,就可以获得去除了透视变形的新图像。...将上式的值用于评估,它表示空间坐标中所有按钮的水平线和垂直线之间的余弦值的两个范数。当Cos值越小,校正效果越好。

    1.4K10

    层次聚类算法

    聚类数的最佳选择是树状图中垂直线的数量,该水平线可以垂直横穿最大距离而不与聚类相交。 1....在聚合法中,每个数据点最初被视为一个单独的簇,然后每次迭代将距离最近的两个簇合并为一个新的簇,直到所有点都合并成一个大簇。...在分裂法中,最初的簇被视为一个单独的簇,然后每次迭代将当前簇中距离最远的两个点分成两个新的簇,直到每个点都是一个簇为止。 2....平均链接:两个聚类之间的距离定义为一个聚类中的每个点与另一个聚类中的每个点之间的平均距离。 Centroid-linkage:找到聚类1的质心和聚类2的质心,然后在合并前计算两者之间的距离。...可以通过树形图来确定最优的簇的数量,可以在图中找到最大距离的位置,然后画一条水平线,这个水平线和垂直线的交点就是最优的簇的数量。

    1.5K10

    5个可以帮助pandas进行数据预处理的可视化图表

    每个点不是在hexbin图中单独绘制的。在下面的代码中,我们用相同的数据集在“Horsepower” 和“Acceleration”之间绘制一个hexbin。...在下面的代码中,我们将计算seaborn“mpg”数据集中所有变量之间的成对相关性,并将其绘制为热力图。 热力图是我个人最喜欢查看不同变量之间的相关性。...那些在媒体上跟踪我的人可能已经注意到我经常使用它。在下面的代码中,我们将计算seaborn“mpg”数据集中所有变量之间的成对相关性,并将其绘制为热力图。...绘制高维数据集的平行坐标非常有用。每个尺寸用一条垂直线表示。 在平行坐标系中,“N”等距垂直线表示数据集的“N”维度。顶点在第n个轴上的位置对应于该点的第n个坐标。...垂直线表示小部件的每个功能。一系列连续的线段代表“小”和“大”小部件的特征值。 ? 下面的代码绘制了seaborn中“attention”数据集的平行坐标。请注意,群集的点看起来更靠近。

    1.5K10

    设计师都开始内卷了 - 用Processing模拟视频号和Facebook新Logo

    你瞧这公式: x=Asin(at+d), y=Bsin(bt), 0≤t≤2π x是一个正弦波,y也是正弦波,但两个正弦波他们的振幅A和B,周期,偏移等都不太相同,最终形成的曲线其实是x轴和y轴两个方向的正弦振动合成的轨迹...参数 d 控制的是我们观察的角度,就像这样 读者朋友也可以从刚才的模拟中看到,改变参数 d,就会“旋转”曲线,在某个特定的值,就会出现微信视频号 Logo 和 Facebook Meta Logo 的样子...value_B * sin(value_b * t); curveVertex(x * value_scaleX, y * value_scaleY); } endShape(); 补充 刚才我们提到在水平和垂直两个方向上正弦振动合成的轨迹...,看下这个图 推荐大胡子的这个李萨如曲线绘制教学: openprocessing 源码地址:https://openprocessing.org/sketch/1345045[2] 这个绘制思路大体是这样的...: 绘制水平和垂直的圆,可以根据设定的画布大小除以圆直径得到行和列的个数 使用笛卡尔坐标系,在每个圆上绘制一个点,利用 angle 叠加,让点动起来 绘制水平线、垂直线,李萨如曲线就是水平垂直线的交点运动形成的轨迹

    1.2K20

    摄影构图:适合小白的摄影构图方法

    相机取景器中看到的网格 应用三分法的几种常见方式: 交叉点定位(视觉中点):将主要的主题或元素放置在画面的交叉点上,这些交叉点位于图像的两个垂直线和两个水平线的交汇处。...垂直线对齐:类似地,将垂直线(如建筑物、树木等)放置在图像的左三分之一或右三分之一的垂直线上,而不是中心位置。这样可以使图像更加平衡和有趣。...换句话说,这两个概念都是关于如何填充画框的,只是方式不同而已。同时,这两个概念都强调了在画面中要保留什么、舍弃什么,做出慎重选择。...前景可以用来给照片增加深度(还有趣味),做法是在构图时,将一些物体放置在你和拍摄主体之间。...从本质上讲,就是给画面增加一些干扰物,让部分场景处于你和拍摄主体之间 倾斜地平线 通过将水平线稍稍倾斜,鱼竿所形成的线条被提高且延长了,照片的嬉戏氛围也被增强了 不要倾斜得太厉害:倾斜的照片所倾斜的角度基本上也都是在

    31810

    绘图

    如何绘制:确定开始点,按照逻辑顺序依次添加步骤和决策点,使用箭头连接它们。 用例图(Use Case Diagrams) 作用:在软件工程中,展示系统的功能和用户(参与者)之间的交互。...如何绘制:确定实体,定义实体属性,确定实体间的关系,用图形元素表示它们并连接。 类图(Class Diagrams) 作用:在面向对象的设计中,展示类之间的关系。...如何绘制:确定系统中的类,定义类的属性和方法,确定类之间的关系并用线条表示。 时序图(Sequence Diagrams) 作用:展示对象间在时间序列中的交互。...核心元素:矩形条(对象)、垂直线(生命周期)、箭头(消息流)。 如何绘制:确定参与交互的对象,按时间顺序排列对象的消息交互。 状态图(State Diagrams) 作用:描述系统或对象的状态变化。...绘制消息(Messages)(带有箭头的线,上面标注了消息): 消息是对象之间交互的表示,用带箭头的水平线表示。 箭头指向接收消息的对象。

    46810

    Origin2018安装与使用(整理中)

    绘制双Y轴图 6.1 绘制双Y轴图 6.2 在现有图层上添加新图层 1. origin下载安装 Origin 2018(32/64位)下载地址: 链接:https://pan.baidu.com/s/...折线图 1.导入数据; 2.绘图→2D折线图; 3.双击坐标轴→更改水平刻度线标签; 4.点击轴线和刻度线→上轴、右轴中主刻度和次刻度样式均设置无; 5.在网格垂直线里面设置主网格线和次网格线;...4.1 数据显示 双击需要显示数据的线条—>标签 4.2 在legend中添加线条标注 双击文本对象legend->添加图例符号 4.3 调节柱状图条形宽度 双击需要调节的柱状图->间距...柱状图 5.1 绘制不均匀的柱状图 绘制柱状图时,由于数据的不均匀,往往会导致柱子与柱子之间的重叠,同时柱子间也会有很大的间隔,影响图形的美观,为此,需要重调X轴的间距,保证柱子与柱子之间间隔的一致性。...绘制双Y轴图 这里介绍一下绘制双Y轴图的两种方法: 6.1 绘制双Y轴图 Origin:如何使用Origin画双Y轴图 6.2 在现有图层上添加新图层 右击空白处,新图层->右-Y轴(关联x轴的刻度和尺寸

    4.9K20

    matlab使用Copula仿真优化市场风险数据VaR分析

    一个Copula对象用于每个债务人的信用与潜在变量模型。潜在变量由一系列加权潜在信用因子以及每个债务人的特殊信用因子组成。潜在变量根据其默认概率映射到每个方案的债务人的默认或非默认状态。...使用Copula对象,您可以模拟某个固定时间段(例如,一年)的默认值和损失。 在此示例中,每个交易对手都使用一组权重映射到两个基础信用因子。...前两列是两个信用因子的权重,最后一列是每个交易对手的特殊权重。此示例中还提供了两个基本因子的相关矩阵。 加载投资组合信息 使用c投资组合信息和因子相关性初始化对象。...0.11015 0.55 0.15 0 0.85 4 3.7534 0.0020125 0.35 0.25 0 0.75 5 5.7193 0.060185 0.35 0.35 0 0.65 模拟模型和绘制潜在损失...预期损失(EL),VaR和CVaR标记为垂直线。由VaR和EL之间的差异给出的经济资本显示为EL和VaR之间的阴影区域。

    16110

    几何绘图软件尝鲜:让你的学生真正告别三角板量角器尺规作图

    尝试:绘制三角形内切圆 我们尝试一个最简单的例子。初等几何内,使用尺规作图,作出任意一个三角形的内切圆。 我们知道,三角形是一定存在内切圆的。...同时,从圆心向一边做垂直线,所得线段长度,就是内切圆半径。 下面使用geogebra逐步绘制。 ? 使用三个点确定一个三角形。 ? 分别绘制∠ABC,∠ACB的内角平分线。 ? ? 然后绘制交叉点。...接着从点D向边BC绘制垂直线。 ? ? 绘制垂直线之后,绘制经过点D与边BC交叉点E。 ? 使用圆心和半径绘制圆。 ?...以上步骤就完成了内切圆的绘制,相信画完之后,对于内切圆的特性,会有更深入的理解, 从特殊到一般 上述三角形具有普遍性,在直角,锐角,钝角三角形的情况下,均符合条件。...下面我们使用手动修改三角形属性,发现上述绘制流程依然有效。 ? ? 结语 geogebra所能解决的远远不止于此,其在代数,微积分,统计等领域,同样提供了支持。 计算机辅助教学,您值得学习尝试。

    1.2K20
    领券