求一三角形相关算法,急!

lzzqqq 2006-11-24 04:50:42
知道了两个点的座标 A点(x1,y1) B点(x2,y2)
我们很容易沿A到B画出一条直线,假设A点和B点是一个直角等腰三角形的一个底点、和顶点,那么怎么求这个直角三角形的C点? 应该有两个C点。
...全文
352 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzzqqq 2006-11-27
  • 打赏
  • 举报
回复
刚才验证了一下,chehw(chehw) 的办法比较简单易懂!
谢谢 chehw(chehw) ,接分!
lzzqqq 2006-11-27
  • 打赏
  • 举报
回复
可能我没说清楚。
已经A,B两点的坐标,AB的距离=BC的距离 ,直线C垂直于AB
求两个C点的坐标.

A(x1,y1)

\
\
\
\ . C(x3,y3)
\ .
\ .
\ .
.
. B(x2,y2)
.

C(X4,y4)
qiujian5628 2006-11-27
  • 打赏
  • 举报
回复
假设A点和B点是一个直角等腰三角形的一个底点、和顶点?

对这句话 我想问A点和B点 哪个是顶点 哪个是底点确定了吗?
如果确定了就很好算了 一画图就知道 如果没有确定 则有六种可能
每个点为直角顶点的时候有两种可能 三个点所以有六种可能
这6个点 应该是 以AB为边的两个正方形的顶点以及正方形对角线的交点
chehw 2006-11-27
  • 打赏
  • 举报
回复
设B(x2,y2)为直角顶点,先将直角三角形的顶点做为原点,
则A点的新坐标为(x1-x2, y1-y2)。以B为圆心将A逆时针旋转90度,可得C1,逆时针旋转270度,可得C2,可用矩阵乘法计算旋转后的坐标,算法如下:
|cosθ sinθ 0 |
新坐标= (x,y,1)* |-sinθ cosθ 0 |
|0 0 1 |
可直接求出C点的新坐标为(y2-y1, x1-x2) 和 (y1-y2, x2-x1);

再用坐标平移,得出C点的原坐标为(y2-y1+x2, x1-x2+y2)和(y1-y2+x2, x2-x1+y2)
walter1024 2006-11-26
  • 打赏
  • 举报
回复
chehw(chehw)说的坐标平移好象不行,
应为还要涉及坐标旋转,坐标平移的条件是目标三角形的两条直角边分别与设备坐标平行.
chehw 2006-11-25
  • 打赏
  • 举报
回复
用坐标平移法会更简单。
先平移坐标,令直角三角形的顶点为原点。
A(x1,y1), B(x2, y2), C(x, y)
设B为顶点, 直接可以得出 C:(y2-y1, x1-x2)) 和 (y1-y2, x2-x1)
LiChenYue 2006-11-24
  • 打赏
  • 举报
回复
这有现成公式套的吧?


蹭分大侠前来拜访!
Snow_Ice11111 2006-11-24
  • 打赏
  • 举报
回复
可以有4个C点。
d_bc 2006-11-24
  • 打赏
  • 举报
回复
chehw(chehw) 的解法不错。
chehw 2006-11-24
  • 打赏
  • 举报
回复
设C点坐标为(x,y)
AB的向量表示为(x2-x1, y2-y1)
BC的向量表示为(x-x2, y-y2),

AB垂直于BC, 向量积为0: (x2-x1)(x-x2)+(y2-y1)(y-y2)=0;
|BC|=|AB| : (x-x2)^2+(y-y2)^2=(x2-x1)^2+(y2-y1)^2
vcPlayer 2006-11-24
  • 打赏
  • 举报
回复
向量AB与向量AC相互垂直,根据向量的运算规则(忘了:()。
一分之千 2006-11-24
  • 打赏
  • 举报
回复
楼主写的真别扭啊,是等腰直角三角形吧?半天没反应过来。
等腰直角的话多简单啊?设A 是直角顶点,b是底边一个顶点,求C点。
C点肯定在过A点并且与AB垂直的线上了,算出AB斜率==》AC的斜率,然后利用A点坐标求出AC的方程。因为是等腰直角,所以AB=AC,从A点向两边分别取AB长度的线段,不久得到两个c了么?
neosu 2006-11-24
  • 打赏
  • 举报
回复
根据A,B计算A-C的距离, 以级AC相对水平的夹角.使用三角函数就可以得到了.
免费软件,欢迎围棋爱好者使用 2010-11-15 围棋学习2.39版相对于2.38版更新说明:   1、继续优化了基础智能类眼形算法,使之对于眼位的所和常规情况区别对待,并填补了旧算法遗漏的对打劫眼形的处理。   2、修正了基础智能类三步包吃和三步吃子算法中第2步可能不入子的疏忽。 2010-11-14 围棋学习2.38版相对于2.36版更新说明:   1、修正了基础智能类眼形算法对2路眼位的对角1路空点的忽略,并优化了一路眼位的成眼次序。   2、修正了基础智能类三步吃子算法中对于第二步判断条件的设置失误。   3、为基础智能类增加了三步包吃算法,提高了人工智能的机敏性。 2010-11-13 围棋学习2.36版相对于2.35版更新说明:   1、继续优化了基础智能类征子歼逃算法,使之搜索可能着手的能力更全面。 2010-11-12 围棋学习2.35版相对于2.32版更新说明:   1、修正了在对局演示的对局状态下直接打开棋谱文件从而切换到对局打谱的再现状态时,工具栏的“悔棋一手”按钮就会变成可用的Bug。   2、修改了棋盘外缘坐标显示形式,从左右两侧用数字、上下两边用字母改为上边和左侧用数字、下边和右侧用字母。   2、优化了基础智能类眼形算法,使之更简明。   3、修正了基础智能类中三处应用方法“基础推算1级_我方基于本处两步转迂回三步吃对方棋子判断”的Bug。   4、再优化了基础智能类征子歼逃算法,使之搜索可能着手的能力得到再增强。 2010-11-11 围棋学习2.32版相对于2.30版更新说明:   1、优化了基础智能类征子歼逃算法,使之搜索可能着手的能力得到增强。   3、修正了基础智能类眼形算法的一些错着漏着。 4、对基础智能类其他相关方法的一些优化。

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧