首页 > 其他分享 >计算机图形学easyx画五角星

计算机图形学easyx画五角星

时间:2023-05-07 22:44:06浏览次数:36  
标签:cos degree 31 easyx 图形学 72 五角星 sin change

可以将一个五角星看成长点和短点的五个组合。在设置好五角星的长边和短边后,便可以画出对应的长边和短边。之后就可以将角度不断增加来完成五角星了。同时可以设置好五角星相对于y轴的偏移

void wujiaoxing(int x, int y, int a, int b, double degree) {
    double change = PI/180 ;
    POINT star[] = {
        // 顶上那个点
        {x - sin(degree* change) * a, y - cos(degree * change) * a},
        // 左侧短边
        {x - sin((31+degree)*change) * b, y -cos((31+degree)*change) * b},
        // 左侧长边
        {x - sin((degree+72)*change) * a, y - cos((degree+72)*change) * a},
        // 左侧短边
        {x - sin((31+degree+72)*change) * b, y -cos((31+degree+72)*change) * b},
        // 左下长边
        {x - sin((degree+72+72)*change) * a, y - cos((degree+72+72)*change) * a},
        // 左下短边
        {x - sin((31+degree+72+72)*change) * b, y -cos((31+degree+72+72)*change) * b},
        //  右下长边
        {x - sin((degree+72*3.0)*change) * a, y - cos((degree+72*3.0)*change) * a},
        //  右下短边
        {x - sin((31+degree+72*3.0)*change) * b, y -cos((31+degree+72*3.0)*change) * b},
        //  右侧长边
        {x - sin((degree+72*4.0)*change) * a, y -cos((degree+72*4.0)*change) * a},
        //  右侧短边
        {x - sin((31+degree+72*4.0)*change) * b, y -cos((31+degree+72*4)*change) * b}
    } ;
    setfillcolor(YELLOW) ;
    solidpolygon(star, 10) ;
}

标签:cos,degree,31,easyx,图形学,72,五角星,sin,change
From: https://www.cnblogs.com/oldmomsimith/p/17380371.html

相关文章

  • 现代计算机图形学——P4. Transformation 3D
    P4.TransformationCont.(上节课补充)————————————————————————————————————————————————————————————————今天的内容:———————————————————————————————————......
  • 关于一些在EasyX图形库上的音乐播放问题
    首先需要包含两个头文件    ①#include<graphics.h>        ②#include<mmsystem.h>                    ③#pragmacomment(lib,"winmm.lib")     (因为使用的是windows的设备,就需要包含windows.h头文件,但是graphi......
  • 五角星
    #-*-coding:utf-8-*-"""CreatedonTueApr1321:31:122021@author:Administrator"""#coding=utf-8importturtle#画五角星(动态)spiral=turtle.Turtle()foriinrange(20):spiral.forward(i*15)#spiral.right(144)#其中的数字代表,画的角......
  • 4.18 c++图形库easyx的基础编程
    头文件#include<graphcis.h>一基础绘图概念1.颜色用三原色表示RGB(红色部分,绿色部分,蓝色部分)每一部分的数值范围(0~255)。基本大写英文单词已对应例如BLUE蓝色2.窗口坐标的默认原点在左上角(0,0)x轴正方向向右,y轴正方向向下。二窗口函数initgraph(intwidth,intheigh......
  • 图形学(6)Ray Tracing:Photometry
    Photometry光能LuminousEnergy单位流明秒(\(lm\cdots\))\[\begin{align*}&Q\[lm\cdots]\end{align*}\]光通量LuminousFlux(power)单位流明(\(lm\))\[\Phi\equiv\frac{dQ}{dt}\[lm]\]光度IllumiousIntensity每单位立体角的光通量,单位坎德拉(\(cd\))\[I\equiv......
  • 现代计算机图形学——P3. Transformation-2D
    P3.TransformationP3.Transformation 矩阵和变换联系起来 ReflectionMatrix(反射矩阵(名字不重要)):切变:旋转:推导:旋转矩阵中的B和D可以用(0,1)这个点来推算线性变换:(先不管这个M)齐次坐标为什么要用齐次坐标:......
  • 图形学(4)Texture
    TextureUV同法向量插值,在ViewSpace内根据顶点的UV重心插值即可。Bilinear注意到一个像素的UV坐标并不是整数,根据坐标四周的四个整点线性插值即可。Mipmap注意到一个像素代表的纹理并非一个点,在远处可能是很大一块纹理的总和,我们用类似四叉树的Mipmap快速计算一整块......
  • 现代计算机图形学——P1-2. Review of Linear Algebra
    (自用笔记)P1.(虚假的P1)计算机图形学、其研究内容及其相关领域与学科P1.(真正的P1)OverviewofComputerGraphicsP2.ReviewofLinearAlgebraP1计算机图形学——是研究怎样用计算机输入、生成(处理)、存储、显示、输出图形的一门学科。构成图形的要素:1.几何要素——形......
  • [计算机图形学] OpenGL读取obj文件并显示其3D效果
       读取三维网格模型(WavefrontOBJ文件)无法向立方体:cube.obj有法向兔子模型:bunny.obj有法向有纹理八字模型:Eight.objOBJ文件的格式可参考:http://www.cnblogs.com/youthlion/archive/2013/01/21/2870451.html 利用OpenGL显示该模型的绘制效果(全部)顶点显示线条显示面片显示 核心......
  • 图形学(2)Viewing Transformation
    ModelViewtransformation(模型视图变换)注意到定义一个相机我们需要三个矢量:位置\(\vec{e}\)视线方向\(\hat{g}\)向上方向\(\hat{t}\)注意到我们的目标就是将相......