Flash 与数学:圆的切线(3)

  在上面几节当中,已经了解过计算圆上任意一点的切线的方法,我们首先知道使用导数几何意义在哪里?在我们高中数学和大学的数学当中,说明了。导数的几何意义函数y=f(x)在点x0处导数为f'(x0)在几何上表示曲线y=f(x)在点M(x0,f(x0))处的切线斜率

 即

          f’(x0)=tana,其中a是切线的倾角。

我们借用这种概念,结合我们编程当中使用,例如,我们需要对一个图形进行按圆形分布。情况如下,但是使用导数之后,将图形变化成另外一种情况。

他们看起来分布情况位置是一样的,但是他们角度偏移并不是一样,看起来会多一种的形态。然后我们为他们添加一种运动方式---圆周运动。让他们看起来运动效果不一样。

下面我们进行一次快速尝试,这种只是一个实现,同样尝试一下Math2类的使用。这个类封装如下,它可以为我们创作带来一定帮助。

在这里我添加几种导数求法,其中一个做圆形分布的时候,另外一个是正弦和余弦分布情况。你可以增加更加功能进去。或者使用我给你提供的简单方法。

//一些数学方面的计算计算工具类 //author 夏天的树人 package org.summerTree.math { public final class Math2 { /*求出圆的任意角度切线的倾斜角 * */ public static function getCircle_K(angle:Number,R:Number=1):Number { var px:Number=R * Math.cos(angle); var py:Number=R * Math.sin(angle); var k:Number=- px / py; return Math.atan(k) * 180 / Math.PI; } //正弦曲线y=sinx的导数,求切线的倾斜角 private static function getSinLine_K(angle:Number):Number { //正弦曲线的sin导数 var cos_daoshu:Number=Math.cos(angle); return Math.atan(cos_daoshu) * 180 / Math.PI; } //余弦曲线y=cosx的导数 private static function getCosLine_K(angle:Number):Number { //正弦曲线的sin导数 var sin_daoshu:Number=- Math.sin(angle); return Math.atan(sin_daoshu) * 180 / Math.PI; } } }

简单的测试:

import org.summerTree.math.Math2; var list:Array=new Array(); var angleList:Array=new Array(); var angle:Number=0; sort(); function sort():void { var perAngle:Number=2*Math.PI/10; for (var j:int=0; j<10; j++) { var image:Sprite=new Sprite(); addChild(image); image.graphics.lineStyle(1); image.graphics.beginFill(0x00ff00); image.graphics.drawRect(-15,-15,30,30);//把图片的注册点设置在中心位置 image.graphics.endFill(); image.x=250+ 100*Math.cos(j*perAngle); image.y=200+ 100*Math.sin(j*perAngle); angleList.push(j*perAngle); image.rotation=Math2.getCircle_K(j*perAngle);//设置切线的角度 list.push(image); } } stage.addEventListener(Event.ENTER_FRAME,Run); function Run(event:Event):void { //角速度圆周运动 angle+=2; for (var i:int=0; i<10; i++) { var temp:Number=angleList[i]+angle*Math.PI/180; list[i].x=250+ 100*Math.cos(temp); list[i].y=200+ 100*Math.sin(temp); list[i].rotation=Math2.getCircle_K(temp); } }

转载于:https://www.cnblogs.com/guoyiqi/archive/2010/06/19/2069125.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475949.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 1110. 删点成林(二叉树递归)

1. 题目 给出二叉树的根节点 root&#xff0c;树上每个节点都有一个不同的值。 如果节点值在 to_delete 中出现&#xff0c;我们就把该节点从树上删去&#xff0c;最后得到一个森林&#xff08;一些不相交的树构成的集合&#xff09;。 返回森林中的每棵树。你可以按任意顺序…

创建链表

代码#include <iostream>usingnamespacestd;structstudent //定义结构体{ intdata; student *next;};//创建链表student *CreateList(){ student *headNULL; student *pnewstudent; cin>>p->data; student *endp; while(p->data!0…

LeetCode 1286. 字母组合迭代器(回溯/位运算)

文章目录1. 题目2. 解题2.1 回溯2.2 位运算1. 题目 请你设计一个迭代器类&#xff0c;包括以下内容&#xff1a; 一个构造函数&#xff0c;输入参数包括&#xff1a;一个 有序且字符唯一 的字符串 characters&#xff08;该字符串只包含小写英文字母&#xff09;和一个数字 c…

基于Java+SpringMvc+Vue求职招聘系统详细设计实现

基于JavaSpringMvcVue求职招聘系统详细设计实现 &#x1f345; 作者主页 专业程序开发 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; 文章目录 基于JavaSpringMvcVue求职招聘系统详细设计实现一、前言介…

无监督学习方法总结

文章目录1. 无监督学习方法的关系和特点1.1 各种方法之间的关系1.2 无监督学习方法1.3 基础机器学习方法1. 无监督学习方法的关系和特点 八种常用的统计机器学习方法&#xff1a; 聚类方法&#xff08;层次聚类、k均值聚类&#xff09;奇异值分解&#xff08;SVD&#xff09;…

java从控制台输入数组_Java将控制台输入的一行整数转成整型数组

思路&#xff1a;将一行数据按字符串的形式读取进来。首先判断输入的字符串是不是空&#xff0c;为空的话&#xff0c;则不作任何操做。其次&#xff0c;将字符串按照指定方式切分为字符串数组&#xff0c;此处是按照空格切分&#xff0c;由于输入是按空格区分的。最后&#xf…

在Silverlight中使用Socket进行通信(1)Socket请求-回复方式的简易数据交换

很久之前用过Socket&#xff0c;由于近期项目需要用socket传输视频流&#xff0c;早上花了半小时回顾了一下。 Socket类简要介绍 socket下提供的主要类有四个&#xff0c;分别是socket,tcpclient,tcplistener,udpclient&#xff0c;他们的作用如下&#xff1a; Socket 含有大量…

java listview控件_ListView普通列表控件的使用

Android中的列表空间非常灵活&#xff0c;可以自定义每一个列表项&#xff0c;实际上每一个列表项就是一个View&#xff0c;在Android定义了3个列表控件&#xff1a;ListView、ExpandableListView和Spinner&#xff0c;其中Spinner就是在Windows中常见的下拉列表框。ListView控…

【Kaggle】Intro to Machine Learning 第一次提交 Titanic

项目官网地址 新手可以参考这篇 8、Getting Started With Titanic&#xff0c;教你如何操作、提交等 自己简要再记录一下&#xff1a; Join the competition 各个 tab 下可以查看数据Data、代码编写Notebooks、讨论、排名、比赛规则、队伍点击 Notebooks&#xff0c;新建文…

在C#代码中执行BCS外部内容类型方法

在前面的博文中我们讨论了如何使用Business Connectivity Services对象模型栏获取已部署在SharePoint BCS中的外部内容类型。 本文中我们将学习如何获取一个ECT的BCS方法集合。并且还要通过Business Connectivity Services对象模型执行其中的Finder方法和SpecificFinder方法。…

java ndc_通过slf4j/log4j的MDC/NDC 实现日志追踪

在分布式系统或者较为复杂的系统中&#xff0c;我们希望可以看到一个客户请求的处理过程所涉及到的所有子系统\模块的处理日志。由于slf4j/log4j基本是日志记录的标准组件&#xff0c;所以slf4j/log4j成为了我的重点研究对象。slf4j/log4j支持MDC&#xff0c;可以实现同一请求的…

java 反射的弊端_java反射机制的一些学习心得小结

概述之前在了解Spring的类加载机制的时候&#xff0c;了解了java的反射机制。但是&#xff0c;我对反射理解一直不深。也一直有点疑惑&#xff1a;Spring为什么利用反射创建对象&#xff1f;直接new对象和依靠反射创建对象有什么区别&#xff1f;什么是动态加载类&#xff1f;什…

LeetCode 1443. 收集树上所有苹果的最少时间(自底向上DFS)

1. 题目 给你一棵有 n 个节点的无向树&#xff0c;节点编号为 0 到 n-1 &#xff0c;它们中有一些节点有苹果。 通过树上的一条边&#xff0c;需要花费 1 秒钟。 你从 节点 0 出发&#xff0c;请你返回最少需要多少秒&#xff0c;可以收集到所有苹果&#xff0c;并回到节点 0 …

java怎吗从磁盘读文件_编写一个Java应用程序,该程序使用FileInputStream类,实现从磁盘读取本应用程序源代码文件,并将文件内容显示在屏幕上。...

满意答案x786741812013.05.10采纳率&#xff1a;42% 等级&#xff1a;12已帮助&#xff1a;14476人import java.io.FileInputStream;import java.io.InputStreamReader;import java.io.BufferedReader;import java.io.IOException;import java.io.FileNotFoundException;pub…

漂亮的博客搜索框

看到漂亮的搜索框&#xff0c;收藏... 主要用背景图片和输入框和链接隐藏完成。 可以在IE6,ff&#xff0c;chorme下兼容... <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quo…

LeetCode 863. 二叉树中所有距离为 K 的结点(公共祖先/ DFS+BFS)

文章目录1. 题目2. 解题2.1 公共祖先2.2 建图BFS1. 题目 给定一个二叉树&#xff08;具有根结点 root&#xff09;&#xff0c; 一个目标结点 target &#xff0c;和一个整数值 K 。 返回到目标结点 target 距离为 K 的所有结点的值的列表。 答案可以以任何顺序返回。 示例 …

多线程 流水线 java_Java Lock锁多线程中实现流水线任务

下面程序代码通过使用Lock锁执行简单的流水线任务&#xff1a;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/*** author lzq* data 2020/4/29 0029 - 下午 9:48*/public class Test…

LeetCode 962. 最大宽度坡(单调栈)

1. 题目 给定一个整数数组 A&#xff0c;坡是元组 (i, j)&#xff0c;其中 i < j 且 A[i] < A[j]。这样的坡的宽度为 j - i。 找出 A 中的坡的最大宽度&#xff0c;如果不存在&#xff0c;返回 0 。 示例 1&#xff1a; 输入&#xff1a;[6,0,8,2,1,5] 输出&#xff1…

python 保存文件 吃内存_孤荷凌寒自学python第三十七天python的文件与内存变量之间的序列化与反序列化...

孤荷凌寒自学python第三十七天python的文件与内存变量之间的序列化与反序列化(完整学习过程屏幕记录视频地址在文末&#xff0c;手写笔记在文末)一、什么是序列化与反序列化序列化是指将内存中的数据进行指定规则的格式梳理&#xff0c;使之方便按一定格式保存到文件中。我的理…

【Kaggle】Intermediate Machine Learning(管道+交叉验证)

文章目录4. Pipelines 管道5. Cross-Validation 交叉验证上一篇&#xff1a;【Kaggle】Intermediate Machine Learning&#xff08;缺失值文字特征处理&#xff09; 下一篇&#xff1a;【Kaggle】Intermediate Machine Learning&#xff08;XGBoost Data Leakage&#xff09; …