- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我编写了一个程序,它处理当前资源到几何图形表面的欧氏距离。在我们的几何考虑中,y 坐标始终为零 - 因此它在 x 和 z 维度上是一个二维结构。该图显示了它的外观:
(length yellow = 100 , length blue = 500) -- 例如,如果原点位于第二个黄色部分的中间,则点源位于坐标 coord=(700,0,510)对于蓝色或黄色部分的每个中点,当然可以通过欧几里得距离:
平方(总和(((中点坐标))^2)
但是如果我从某个部分通过角度 $\alpha$ 来“弯曲”这个“棍子”,我该怎么做呢?:
y 坐标再次为零,源再次垂直放置在 z 方向上 - 但是我如何确定到截面中心的欧几里得距离?所以我们使用相同的长度尺寸,只是我们在电极的方向上将棒弯曲 30%,例如在原点或第 5 段。最好的方法是相应地操纵中点的“x”值....
最佳答案
我现在无法访问 Matlab,所以我用 python 编写了一些代码。这是你想做的吗?:
# plotting function of a polyline, a point and, if chosen, midpoints of polyline
def plot_polyline(P, P0, equal_axes, show_midpoints):
M = midpoints_of(P)
plt.figure()
plt.plot(P0[0], P0[1], 'bo')
plt.plot(P[:,0], P[:,1])
for k in range(P.shape[0]):
plt.plot(P[k,0], P[k,1], 'ro')
if show_midpoints:
for k in range(M.shape[0]):
plt.plot(M[k,0], M[k,1], 'yo')
axx = plt.gca()
if equal_axes:
axx.set_aspect('equal')
plt.show()
return None
def cos_sin(angle):
return math.cos(angle), math.sin(angle)
# generate a rotation matrix that rotates a 2D vector at an angle alpha
# observe the matrix format is [x1, y1] = [x, y].dot([[cos, -sin],
# [sin, cos]])
# and rotation is clockwise rotation of vector written as row-vectors
def rot_matrx(angle):
cs, sn = cos_sin(angle)
return np.array([[ cs, -sn],
[ sn, cs]])
# performs a clockwise rotation of a point around a center at an angle
def rotate(points, angle, center):
U = rot_matrx(angle)
return (points - center).dot(U) + center
# bending
def perform_bending(polyline, angle, index_bending_point):
x1 = polyline.copy()
x_bend = x1[index_bending_point,:]
# rotate half angle around point x_bend first
x1[0:index_bending_point,:] = rotate(x1[0:index_bending_point,:],
angle/2, x_bend)
# rotate the result from above half angle more around point x_(bend-1)
x_bend = x1[(index_bending_point-1),:]
x1[0:(index_bending_point - 1),:] = rotate(x1[0:(index_bending_point - 1),:],
angle/2, x_bend)
return x1
# calculate the array of midpoints of the polyline
def midpoints_of(polyline):
k, m = polyline.shape
return (polyline[0:(k-1), :] + polyline[1:k, :]) / 2
# calculate the distances from point to the midpoints of a polyline
def calc_distances(point, mids_of_polyline):
return np.linalg.norm(point-mids_of_polyline, axis=1)
# initialize example:
a = 2 # yellow segments' lenght
b = 5 # blue segments' lenght
n = 12 # number of segments + 1, number of points separating segments
alpha = 40 # angle of bending in degrees
alpha = math.pi * 40/180 # angle in bending in radians
# generate [0, 1, 2, 3, 4, 5, 6, 7]
I = np.arange(0,n)
# generate the x[0,] and x[1,] coordinates of the polygonal line
x = np.empty((n, 2), dtype=float)
I = np.floor(I / 2)*(a+b) + (I % 2)*a
x[:, 0] = I.T
x[:, 1] = 0
# point on x that is coordinate origin
x0 = (x[2,:] + x[3,:])/2
# shift initial polyline:
x = x - x0
# index of bending point
i_bend=5
x_bent = perform_bending(x, angle=alpha, index_bending_point=i_bend)
x_mids = midpoints_of(x_bent)
# point
p = np.array([x_mids[i_bend-1, 0], 5.1])
dist = calc_distances(p, x_mids)
plot_polyline(x, p, equal_axes=True, show_midpoints=False)
plot_polyline(x_bent, p, equal_axes=True, show_midpoints=True)
plot_polyline(x_bent, p, equal_axes=True, show_midpoints=False)
print(dist)
关于matlab - 到 "curved"结构的欧氏距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66865638/
我目前正在尝试基于哈希表构建字典。逻辑是:有一个名为 HashTable 的结构,其中包含以下内容: HashFunc HashFunc; PrintFunc PrintEntry; CompareF
如果我有一个指向结构/对象的指针,并且该结构/对象包含另外两个指向其他对象的指针,并且我想删除“包含这两个指针的对象而不破坏它所持有的指针”——我该怎么做这样做吗? 指向对象 A 的指针(包含指向对象
像这样的代码 package main import "fmt" type Hello struct { ID int Raw string } type World []*Hell
我有一个采用以下格式的 CSV: Module, Topic, Sub-topic 它需要能够导入到具有以下格式的 MySQL 数据库中: CREATE TABLE `modules` ( `id
通常我使用类似的东西 copy((uint8_t*)&POD, (uint8_t*)(&POD + 1 ), back_inserter(rawData)); copy((uint8_t*)&PODV
错误 : 联合只能在具有兼容列类型的表上执行。 结构(层:字符串,skyward_number:字符串,skyward_points:字符串)<> 结构(skyward_number:字符串,层:字符
我有一个指向结构的指针数组,我正在尝试使用它们进行 while 循环。我对如何准确初始化它并不完全有信心,但我一直这样做: Entry *newEntry = malloc(sizeof(Entry)
我正在学习 C,我的问题可能很愚蠢,但我很困惑。在这样的函数中: int afunction(somevariables) { if (someconditions)
我现在正在做一项编程作业,我并没有真正完全掌握链接,因为我们还没有涉及它。但是我觉得我需要它来做我想做的事情,因为数组还不够 我创建了一个结构,如下 struct node { float coef;
给定以下代码片段: #include #include #define MAX_SIZE 15 typedef struct{ int touchdowns; int intercepti
struct contact list[3]; int checknullarray() { for(int x=0;x<10;x++) { if(strlen(con
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Empty “for” loop in Facebook ajax what does AJAX call
我刚刚在反射器中浏览了一个文件,并在结构构造函数中看到了这个: this = new Binder.SyntaxNodeOrToken(); 我以前从未见过该术语。有人能解释一下这个赋值在 C# 中的
我经常使用字符串常量,例如: DICT_KEY1 = 'DICT_KEY1' DICT_KEY2 = 'DICT_KEY2' ... 很多时候我不介意实际的文字是什么,只要它们是独一无二的并且对人类读
我是 C 的新手,我不明白为什么下面的代码不起作用: typedef struct{ uint8_t a; uint8_t* b; } test_struct; test_struct
您能否制作一个行为类似于内置类之一的结构,您可以在其中直接分配值而无需调用属性? 前任: RoundedDouble count; count = 5; 而不是使用 RoundedDouble cou
这是我的代码: #include typedef struct { const char *description; float value; int age; } swag
在创建嵌套列表时,我认为 R 具有对列表元素有用的命名结构。我有一个列表列表,并希望应用包含在任何列表中的每个向量的函数。 lapply这样做但随后剥离了列表的命名结构。我该怎么办 lapply嵌套列
我正在做一个用于学习目的的个人组织者,我从来没有使用过 XML,所以我不确定我的解决方案是否是最好的。这是我附带的 XML 文件的基本结构:
我是新来的 nosql概念,所以当我开始学习时 PouchDB ,我找到了这个转换表。我的困惑是,如何PouchDB如果可以说我有多个表,是否意味着我需要创建多个数据库?因为根据我在 pouchdb
我是一名优秀的程序员,十分优秀!