游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2595|回复: 0

求C++算法:特殊三角形分裂算法

[复制链接]

1

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2012-6-8 18:12:00 | 显示全部楼层 |阅读模式
先放图:


目的就是找到一个算法能快速的算出D的坐标。
已知任意A,B,C点式的坐标,A、B、C三点互异,求D点的坐标,D点要满足以下的条件
1. 离AC边的中点最近
2. 在背景图的“正方形”的顶点上,不能在“正方形”的边上和内部
3. D点不能在三角形ABC的内部,但可以在三角形ABC的边或者顶点上。
4. D点在直线AC上或者直线AC的右边(B点就在直线AC的右边,就是说D、B不能在直线AC的同侧)

这样就得到了两个三角形,即BDA和BDC
在此先谢谢大家了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-9 22:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表