• 基于C++实现一个支持简单交互绘图小程序


    资源下载地址:https://download.csdn.net/download/sheziqiong/86763967
    资源下载地址:https://download.csdn.net/download/sheziqiong/86763967

    基于C++实现一个支持简单交互绘图小程序

    一、概要设计

    1.1 开发环境

    IDE:Visual Studio 2019 Commity

    运行环境:window10 专业版配置要求:

    内存 4g

    显卡 无要求

    CPU 无要求

    目的

    调试编译通过图形应用编码、熟悉flk

    1.2 结构化模块设计图

    在这里插入图片描述

    UML类图

    在这里插入图片描述

    1.3 主要模块功能接口描述

    Graph.cpp

    void Shape::add(Point p) // 向图形中添加点
    void Shape::draw_lines() // 绘制线条
    void Shape::draw() // 根据选定的线条样式、颜色等绘制图像
    void Shape::move(int dx, int dy) // 图像移动 dx和dy是图像横坐标和纵坐标移动的截距
    void Lines::add(Point p1, Point p2) // 添加线
    void Lines::draw_lines() const // 根据里面的点绘制线条
    inline pair line_intersect(Point p1, Point p2, Point p3, Point
    p4, bool& parallel) // 线条之间的相交
    void Polygon::add(Point p) // 多边形的添加点
    void Polygon::draw_lines() // 画线
    void draw_mark(Point xy, char c) // 绘制标记
    void Rectangle::draw_lines() const // 矩形线条绘制
    Point Circle::center() // 圆心
    void Circle::draw_lines() // 绘制圆的线条
    void Ellipse::draw_lines() const // 椭圆画线
    void Axis::draw_lines() const // 坐标轴画线
    void Axis::set_color(Color c) // 设置颜色
    void Axis::move(int dx, int dy) //axis移动
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    GUI.cpp

    void Button::attach(Window& win) // 按钮连接到窗口上
    int Menu::attach(Button& b) // menu连接到窗口上
    
    
    • 1
    • 2
    • 3

    Simple_window.cpp

    bool Simple_window::wait_for_button() // 等到按钮的点击事件
    void Simple_window::cb_next(Address, Address pw) // 将Simple_window::next()连接到
    pw
    void Simple_window::next()
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    window.cpp

    void Window::draw() // 窗口绘制
    void Window::attach(Widget& w) // 窗口链接
    void Window::detach(Widget& b) // 取消链接
    
    • 1
    • 2
    • 3

    二、详细设计与实现

    2.1 代码组织图

    在这里插入图片描述

    2.2 核心数据结构描述

    2.3 绘制图形

    在这里插入图片描述

    2.3.1 将sin添加进去

    在这里插入图片描述

    2.3.2 将矩形添加进去

    在这里插入图片描述

    2.3.3 添加颜色等

    在这里插入图片描述

    资源下载地址:https://download.csdn.net/download/sheziqiong/86763967
    资源下载地址:https://download.csdn.net/download/sheziqiong/86763967

  • 相关阅读:
    JUC学习笔记——共享模型之不可变
    访问量突破1W,纪念一下~
    18-Go语言之单元测试
    今天,该让 python 上个热门
    如何使用 Bing Image Creator 创建图像(DALL-E3)
    《Mycat分布式数据库架构》之高可用集群
    云原生Kubernetes:K8S配置资源管理
    Vue3踩坑指南
    算法——动态规划(新)
    MySQL之分布式事务
  • 原文地址:https://blog.csdn.net/newlw/article/details/126814679