今天碰到一个题目如下

用三角形triangle、方形square、圆形circle等"基本图形"来表示任意的 图形 如菱形 半圆等,用类图或者java c++等其他编程需要应当如何表示,能达到不改代码的情况下实现画图需求(图是多变的)。请提供设计。

看起来靠谱的答案

不会做菜的美食博主

微软员工

先定义网格坐标,基本图形定义和形变

线段:两个点坐标

三角形:三个点的坐标,唯一确定一个三角形,通过点的移动来使得三角形的形态变化

矩形:四个点坐标,长和宽的长度来控制伸缩

圆形,圆心加半径长度

contract:图形是一个interface, 具体通过不同的参数来实现比如三角形,圆形等抽象类, 暴露的方法有画图,形变,旋转,伸缩,平移,擦除线段

二维旋转,伸缩和平移,都有实现算法,每个抽象类都override自己的逻辑

菱形就是两个三角形组合,擦除重复边,圆形就是圆加线段再擦除半边

https://maimai.cn/web/gossip_detail/29777648?src=app&webid=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6Mjk3Nzc2NDgsInUiOjE3ODcxMzYzNiwiZWdpZCI6IjAxMDNlZThkMGI3YzQyMDhiOGFkN2IyNzdiNTU0Y2VlIn0.d4JKUjk4VD3FriYbEtPj751-MsuCkHH02MhhNYNhEiI&share_channel=2

337、用三角形triangle、方形square、圆形circle等“基本图形“来表示任意的 图形 如菱形 半圆相关推荐

  1. Java 应用程序,该程序中有 3 个类:Triangle、T rapezium 和 Circle,分别用来 表示三角形、梯形和圆形。

    Java 应用程序,该程序中有 3 个类:Triangle.T rapezium 和 Circle,分别用来 表示三角形.梯形和圆形. 具体要求如下. Triangle 类具有类型为 double 的 ...

  2. 显示一张桌子的信息,包括桌子的形状(长方形、方形、圆形、椭圆形;使用Rect、Square、Circle、Ellipse)、腿数、高度、桌面面积。定义变量来保存桌子的信息,并显示各个信息的值。要点提示

    [问题描述] 显示一张桌子的信息,包括桌子的形状(长方形.方形.圆形.椭圆形:使用Rect.Square.Circle.Ellipse).腿数.高度.桌面面积.定义变量来保存桌子的信息,并显示各个信息 ...

  3. 编写一个 Java 应用程序,该程序中有 3 个类:Triangle、T rapezium 和 Circle,分别用来 表示三角形、梯形和圆形。

    Java 应用程序,该程序中有 3 个类:Triangle.T rapezium 和 Circle,分别用来 表示三角形.梯形和圆形. 具体要求如下. Triangle 类具有类型为 double 的 ...

  4. 设计一个程序,程序中有三个类,Triangle,Lader,Circle。

    //此程序写出三个类,triangle,lader,circle:其中triangle类具有类型为double的a,b,c边以及周长,面积属性, //具有周长,面积以及修改三边的功能,还有判断能否构成 ...

  5. java 程序写出三个类,triangle,lader,circle(简单易懂)

    编写一个Java应用程序,该程序中有三个类:Triangle.Trapezoid和Circle,分别用来刻画"三角形"."梯形"和"圆形". ...

  6. python定义一个triangle类_设计一个程序,程序中有三个类,Triangle,Lader,Circle。...

    //此程序写出三个类,triangle,lader,circle:其中triangle类具有类型为double的a,b,c边以及周长,面积属性, //具有周长,面积以及修改三边的功能,还有判断能否构成 ...

  7. 计算机教案画圆形和方形,画方形和圆形的教案

    教学目标1. 通过对长方体.正方体.圆柱底面的观察,及摸一摸.画一画等体验活动,直观认识长方形.正方形和圆,知道这些常见图形的名称,能识别这些图形,初步了解这些图形在日常生活中的应用.2. 在现实有趣 ...

  8. 新想法!华科、清华、康奈尔联合提出“圆形卷积”!聚合方形和圆形优势

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:知乎Sophia https://zhuanlan.zhihu.com/p/389626075 AI博士笔记系 ...

  9. java刻画三角形和梯形和圆形_三角形、梯形和圆形的类封装

    编写一个Java应用程序,该程序中有3个类:Trangle.Leder和Circle,分别用来刻画"三角形"."梯形"和"圆形".具体要求如 ...

最新文章

  1. 非专业转行python的几点建议
  2. 【图论】清理牛棚/Cleaning Shifts S(luogu 4644)
  3. 【转】Ubuntu中SVN客户端安装+使用
  4. android fileinputstream 获取file,Android FileInputStream没有读取文件
  5. String封装——读时共享,写时复制
  6. 【❤️万字长文总结❤️】一篇学会Redis高可用✔集群✔搭建详细教程
  7. 输出100之间的所有质数(素数)
  8. 六石管理学:切勿通过扯皮折腾别人,一句你不要管了即可
  9. Windows: 定制多用户多Registry键脚本
  10. 高项 案例分析重点知识 风险采购合同
  11. 每个广告组放多少个关键字合适?
  12. 随机地址生成器_Python文章自动生成器火了!没错,它的名字叫“狗屁不通”!...
  13. 美国电影超短200句(看英文原版电影很有用的!)(转)
  14. 条件格式实现ABC分析
  15. 不要猥琐就是浪,特斯拉这一季度又亏大发了
  16. opencv-python 使用中遇到的问题
  17. 如何将复杂的物理建模过程化繁为简?
  18. python需要cpu还是显卡问题_买新电脑是cpu重要还是显卡重要?该怎么选择?
  19. pytorch(9)-- 利用resnet18使cifa10数据集达到95%准确率
  20. localtime、localtime_s、localtime_r的使用

热门文章

  1. 苹果或4亿美元收购Shazam 科技巨头杀入流媒体音乐领域
  2. 非全屏Activity实现,以及触摸消息的处理
  3. Python使用AI photo2cartoon制作属于你的漫画头像
  4. 按钮动作监听器和鼠标监听器的同时实现,在画图板上画出三角形,射线,曲笔,谢尔宾斯基三角形,谢尔宾斯基地毯Random类的实现,数组的实现,Thread.sleep的实现
  5. Linux 磁盘共享存储
  6. 如何修复模糊的照片?简单的处理方法
  7. command line is too long. shorten command line for xxx的解决方法
  8. 基于android的智慧社区物业便民服务APP(源码+系统+mysql数据库+Lw文档)
  9. 【死循环警告⚠】i=i++导致的死循环!
  10. 计算机考研考音乐学院,135101音乐专业考研