相交线的平面度模型
Planarity Model for intersecting lines
我正在查看模型库中 Planarity 模型的 "crossed?" 方法以确定两条线是否相交。
这个模型似乎大部分都有效;但是,我认为我发现了一个问题。我没有解决这个问题的数学技能。
本质上,考虑连接的节点 A 和 B,以及连接的 C 和 D。
当交点在其中一个端点上时,AB 垂直于 CD 时会出现此问题。
例如,
Node xcor ycor
A 0 0
B 0 10
C -10 0
D 5 0
有没有想过如何扩展模型来描述这种边界条件?我在数学上没有信心描述这种情况何时发生......我想要一个替代相交线示例的方法,它计算线的方程并求解 x's 并检查 x's 是否在端点内其中一行。
马特,平面度没有报告我与你的例子中的任何一个坐标集的真正交叉:
在这两种情况下,模型都被视为 "solved";没有交叉路口报告。为了让模型无法求解,我需要让链接真正交叉,但交叉点是否直接在中心似乎并不重要:
使用与我此处相同的设置,您是否会遇到类似的行为?我不确定我是否遗漏了什么。修改了下面初始展示位置的代码,需要附件中的选择器。
to setup-level
reset-ticks ;; use tick counter as a move counter
clear-turtles ;; when the turtles die, the links connecting them die too
;; create nodes and position them randomly
( foreach xcors ycors [ "A" "B" "C" "D" ] [ [ x y n ] ->
create-turtles 1 [
setxy x y
set size 2
set color 88
set node n
set label node
set label-color black
]
]
)
( foreach [ "A" "C" ] [ "B" "D" ] [ [ sp ep ] ->
ask turtles with [ node = sp ] [
ask turtles with [ node = ep ] [
create-link-with myself ]
]
]
)
display
end
我正在查看模型库中 Planarity 模型的 "crossed?" 方法以确定两条线是否相交。
这个模型似乎大部分都有效;但是,我认为我发现了一个问题。我没有解决这个问题的数学技能。
本质上,考虑连接的节点 A 和 B,以及连接的 C 和 D。
当交点在其中一个端点上时,AB 垂直于 CD 时会出现此问题。
例如,
Node xcor ycor
A 0 0
B 0 10
C -10 0
D 5 0
有没有想过如何扩展模型来描述这种边界条件?我在数学上没有信心描述这种情况何时发生......我想要一个替代相交线示例的方法,它计算线的方程并求解 x's 并检查 x's 是否在端点内其中一行。
马特,平面度没有报告我与你的例子中的任何一个坐标集的真正交叉:
在这两种情况下,模型都被视为 "solved";没有交叉路口报告。为了让模型无法求解,我需要让链接真正交叉,但交叉点是否直接在中心似乎并不重要:
使用与我此处相同的设置,您是否会遇到类似的行为?我不确定我是否遗漏了什么。修改了下面初始展示位置的代码,需要附件中的选择器。
to setup-level
reset-ticks ;; use tick counter as a move counter
clear-turtles ;; when the turtles die, the links connecting them die too
;; create nodes and position them randomly
( foreach xcors ycors [ "A" "B" "C" "D" ] [ [ x y n ] ->
create-turtles 1 [
setxy x y
set size 2
set color 88
set node n
set label node
set label-color black
]
]
)
( foreach [ "A" "C" ] [ "B" "D" ] [ [ sp ep ] ->
ask turtles with [ node = sp ] [
ask turtles with [ node = ep ] [
create-link-with myself ]
]
]
)
display
end