返回列表 回复 发帖

数学或物理高手进来看看

知道A点的坐标,
A点和B点的距离,
也知道A和B的角度,
请问怎么求得B点的坐标?
我的全flash小站http://www.ourme.cn
看似简单,但想暴脑袋
我的全flash小站http://www.ourme.cn
用三角函数!极坐标
看似简单,实际更简单.....已知斜边2和顶角30度,问:对边?问:邻边?--b
var rotate = 30;
var distance = 200;
b._y = a._y+distance*Math.sin(Math.PI/180*rotate);
b._x = a._x+distance*Math.cos(Math.PI/180*rotate);
高人们呀,
如果说是数学,不是FLASH语言的话我就会了。初中老师教过,就是不懂怎么把那个符号打出来!

根号(X的平方+Y的平方)
设a(Xa,Ya),角度C,直线ab长度L,求b(Xb,Yb)?

解:
       (Xb-Xa)^2+(Yb-Ya)=L^2
   
       sinC=(Yb-Ya)/L
其实楼主要做的是什么啊?
欢迎大家加入Flash侠客群,无论新老手,均一视同仁:24549400
2楼的回答对事情的发展没有半点推进作用.
3楼的回答基本上是把我的说法经过打包压缩后再放了回来,从另一个侧面看来好象是对我表达能力的一种否定.....
4楼的答案是我想要的标准答案.感激万分!!
5楼的...............
6楼的回答是不行的.我要求的是知斜边和一个角求两边,你那勾三股四的公式是知道两边求一边的,所以回答错误!
7楼的方法嘛.........太艺术了!我看不懂,把代码放进flash里面也用不了.我还在盲目崇拜中!
8楼的,你不会认为我在用flash 来解一道几何题给老师改吧?其实我再做一个敌人向主角冲刺的动作,要做得象日本54决斗时那样,向目标一冲而过,然后到一定的距离后停了下来..........明白没有.
总结:为什么我这么久才回帖,那是因为我在发帖后就回去翻高中的书,去找方法去了.我来回帖的时候其实我已经解决了这 个问题,不过还要谢谢大家的热心参与~~谢谢!
我的全flash小站http://www.ourme.cn

这是我未完成的一个东西,看看对你有没有用

var pa:Array = new Array();
var pb:Array = new Array();
var aa:Number;
var ab:Number;
var ac:Number;
var ad:Number;
var ae:Number;
for (ac=0, ad=-90, ae=200; ac<60; ac++, ad += 6) {
        //aa = 200*Math.cos(bd*6*Math.PI/180)+200;
        //ab = 200*Math.sin(bd*6*Math.PI/180)+200;
        aa = ae*Math.cos(ad*Math.PI/180)+200;
        ab = ae*Math.sin(ad*Math.PI/180)+200;
        pa[ac] = aa;
        pb[ac] = ab;
        trace(pa[ac]);
        trace(pb[ac]);
        //trace(ac);
}
this.createEmptyMovieClip("circle_mc", this.getNextHighestDepth());
circle_mc.lineStyle(3, 0x000000);
drawCircle(circle_mc, 200, 200, 200);
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
        mc.moveTo(x+r, y);
        mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
        mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, r+y);
        mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
        mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
        mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x, -Math.sin(Math.PI/4)*r+y);
        mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
        mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x, -Math.sin(Math.PI/4)*r+y);
        mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
this.createEmptyMovieClip("triangle2_mc", this.getNextHighestDepth());
//this.createEmptyMovieClip("triangle3_mc", this.getNextHighestDepth());
//this.createEmptyMovieClip("triangle4_mc", this.getNextHighestDepth());
var ba:Date = new Date();
var be = ba.getSeconds();
onEnterFrame = function () {
        bb = ba.getHours();
        bc = ba.getMinutes();
        bd = ba.getSeconds();
        ta.text = bd;
        if (bd != be) {
                triangle2_mc.clear();
                triangle2_mc.moveTo(200, 200);
                triangle2_mc.lineStyle(5, 0x666633, 100);
                triangle2_mc.curveTo(200, 200, pa[bd], pb[bd]);
                triangle3_mc.clear();
                triangle3_mc.moveTo(200, 200);
                triangle3_mc.lineStyle(5, 0x000000, 100);
                triangle3_mc.curveTo(200, 200, 395.629520146761, 241.582338163552);
                triangle4_mc.clear();
                triangle4_mc.moveTo(200, 200);
                triangle4_mc.lineStyle(5, 0xffff00, 100);
                triangle4_mc.curveTo(200, 200, 390.211303259031, 261.803398874989);
                //trace(bd)
                //trace(pa[bd]);
                //trace(pb[bd]);
                //trace("/");
                be = bd;
        }
        ba = new Date();
};

[[i] 本帖最后由 headoff 于 2006-9-16 22:02 编辑 [/i]]

ourme 兄弟你看是不是这样

06-已知A求B-2.swf (28.34 KB)

我的blog:http://yuheduo.5dblog.com
全Flash:http://yuheduo.go1.icpcn.com/   
10楼的,你这个是个表呀!
11楼的,竟然把我的问题做成课件了,I服了u
我的全flash小站http://www.ourme.cn
返回列表