0
A
回答
2
部分的全長
dAB = sqrt((x2-x1).^2 + (y2-y1).^2 + (z2-z1).^2);
現在,使用dAB
,dAC
和dBD
之間的比例,以獲得座標的休息:
x3 = x1 + (dAC./dAB)*(x2-x1);
y3 = y1 + (dAC./dAB)*(y2-y1);
z3 = z1 + (dAC./dAB)*(z2-z1);
同樣
x4 = x1 + ((dAB-dBD)./dAB)*(x2-x1);
y4 = y1 + ((dAB-dBD)./dAB)*(y2-y1);
z4 = z1 + ((dAB-dBD)./dAB)*(z2-z1);
驗證:
figure;
plot3([x1 x3 x4 x2].',...
[y1 y3 y4 y2].',...
[z1 z3 z4 z2].',...
'-*',...
'LineWidth', 1.5);
和距離
sqrt((x1-x3).^2 + (y1-y3).^2 + (z1-z3).^2) - dAC
sqrt((x2-x4).^2 + (y2-y4).^2 + (z1-z3).^2) - dBD
在更MATLABby符號,
% Coordinates of A (x1) and B (X2)
X1 = [x1 y1 z1].';
X2 = [x2 y2 z2].';
% distance between A and B
dX12 = X2 - X1;
dAB = norm(dX12);
% Coordinates of C (X3) and D (X4)
X3 = X1 + dAC/dAB * dX12;
X4 = X1 + (dAB-dBD)/dAB * dX12;
% Plot to verify
Y = [X1 X3 X4 X2].';
plot3(Y(:,1), Y(:,2), Y(:,3),...
'r-*',...
'LineWidth', 1.5);
% Distances to verify
ddAC = norm(X1 - X3) - dAC
ddBD = norm(X2 - X4) - dBD
相關問題
- 1. 如何觸發屏幕上已知座標的點擊?
- 2. 查找線上點的座標
- 3. 檢索已保存的谷歌地圖上的座標點的座標
- 4. 如何通過已知2點的3點找到拋物線運動中最終點的座標?
- 5. 找到圖像上的座標,知道一條線的中心點和斜率
- 6. Matlab - 基於座標的直線的交點座標
- 7. 模仿鼠標在融合表圖層上的已知座標的點 - 點 - 谷歌地圖
- 8. 知道點擊圖片時的座標
- 9. 如何找到給定線的另一點和垂直線上的2個點的線上點的X座標?
- 10. 從已知XYZ角度,半徑和原點的點尋找3D座標?
- 11. 圖像上點擊點的座標HTML
- 12. 如果我知道飛機上紋理的頂點座標,我該如何計算頂點的uv座標
- 13. 在JPanel已知座標上畫一個形狀
- 14. 如何在cocos2d中獲取Bezier曲線上某點的座標?
- 15. 在線上計算特定點的座標
- 16. 如何獲取曲線上任意點的座標值?
- 17. 用SAGE計算橢圓曲線上一個點的y座標?
- 18. 使用4個已知GCP點將緯度長座標轉換爲像素座標的代碼
- 19. 基於焦點點在座標系上畫一條橢圓線?
- 20. 對齊座標原點的座標軸
- 21. 已知軸上的SVG折線圖
- 22. dimple.js:獲取座標軸上的點/位置座標
- 23. 座標上的Java fillRect和鼠標移動點座標在Y軸上關閉
- 24. 從iphone上的mkmapview獲取點座標
- 25. 獲取圖像上的點座標
- 26. Webdriver。點擊座標上的Canvas元素
- 27. 如何點擊頁面上的座標?
- 28. 如何點擊屏幕上的座標?
- 29. 查找屏幕上點的座標?
- 30. 直線座標
@RodyOldenhuis - 我是這樣的2D人物......錯過'z'完全。感謝編輯! – Shai