简介

CsGrafeq是一项用C# AvaloniaUI实现的开源几何画板,支持AOT发布, 无需安装 .NET Core 运行时,无需携带大量动态链接库。

CsGrafeq目前支持的几何图形包含线,点,圆,多边形,角,可以通过拖拽改变图形。

使用SkiaSharp绘制 支持跨平台

动机

作为高中生,深感几何画板的不便。国内常用的几何画板(就是那个画风古早的)性能较差,画面古老粗糙,国外相应软件需要付费,而类似于GeoGeBra和Desmos又需要联网,给作者的高中生活写作业创造大量困难。

于是作者使用暑假时间实现了这项开源的几何画板。

隐函数绘制

项目中的OldVersion文件夹是为隐函数绘制而专做的,使用WinForm。

隐函数绘制如使用ExpressionTree加速,在AOT中表现不佳,出于性能和跨平台需要的原因,隐函数绘制在CsGrafeq暂时不支持,在未来会合并入CsGrafeq。

开源地址:CsGrafeq

直接下载:CsGrafeq

示例







以下为隐函数绘制示例(暂时不在主项目中支持!)

CsGrafeq:用C#实现一个几何画板的更多相关文章

  1. 几何画板给word绘制图形的方法

    几何画板是一款专门用来绘图的工具,它里面有很多的绘图工具和功能菜单,都是专门为画图而设计的,比如一些理科的期刊杂志论文出版的时候,里面所涉及到的图形很多都是用几何画板画出来的.下面就根据几何画板教程来 ...

  2. 用Java语言编写一个简易画板

    讲了三篇概博客的概念,今天,我们来一点实际的东西.我们来探讨一下如何用Java语言,编写一块简易的画图板. 一.需求分析 无论我们使用什么语言,去编写一个什么样的项目,我们的第一步,总是去分析这个项目 ...

  3. “几何画板+MathType”双11组合特价,优惠多多

    工欲善其事,必先利其器!几何画板和MathType作为数学老师必备工具,在数学教学中起着非常重要的作用.为回馈老师们做出的伟大贡献,在双11狂欢节期间,MathType和几何画板迎来史上第一次组合特惠 ...

  4. 如何用几何画板画V型尖波函数图像

    虽然几何画板没有编程功能,无法直接进行逻辑判断,但通过恰当地运用sgn.trunc等函数可以间接地画出一些特殊函数图像,比如V型尖波函数图像,下面将详细介绍如何用几何画板画V型尖波函数图像. 具体的操 ...

  5. 将几何画板x轴坐标值换成弧度制的方法

    大家在学习数学的过程中,都会遇到函数,这个时候大家都会遇到函数图像.对于函数图像我们一般都会通过先建立坐标系,然后让图像呈现在坐标系中.函数的种类有很多,三角函数就是其中之一,在绘制三角函数图像时,我 ...

  6. Geometry 判断几何是否被另一个几何/线段分割成多段

    如下图,如何判断几何多边形A被多边形B,切割为多段几何? 几何A被几何B切割 1. 获取几何A与几何B的交集C var intersectGeometry = new CombinedGeometry ...

  7. [原创]基于html5新标签canvas写的一个小画板

    最近刚学了canvas,写个小应用练习下 源代码 <!DOCTYPE> <html> <head> <meta http-equiv="Conten ...

  8. objective-c 中数据类型之中的一个 几何数据类型(CGPoint,CGSize,CGRect)

    // CGPoint 结构体数据原型, 用于声明一个点: /* Points. */ struct CGPoint { CGFloat x; CGFloat y; }; typedef struct ...

  9. 用canvas画布画一个画板

    前段时间,在对H5的回顾中突然对canvas有了感觉,闲来无事便对其进行了一些捯饬.这不,上周我还做了一个好玩的画板呢,废话不多说,直接上代码(PS:翠花,上代码~): HTML部分: <!DO ...

  10. [HIMCM暑期班]第3课:一个博弈问题

    在一个街道平面图上,住着n个住户.有两个贩卖热狗的商贩,各自想要在街区里摆设一个小摊.每天住户都会去离他家50米范围内的最近的摊点消费.问: 1. 如果两位小贩摆设小摊的顺序有先后(设A先摆,然后B再 ...

随机推荐

  1. 【FAQ】HarmonyOS SDK 闭源开放能力 —Account Kit(5)

    1.问题描述: 集成华为一键登录的LoginWithHuaweiIDButton, 但是Button默认名字叫 "华为账号一键登录",太长无法显示,能否简写成"一键登录& ...

  2. OceanBase 中的非机动车道 —— SQL 限流技巧分享

    首先为大家推荐这个 OceanBase 开源负责人老纪的公众号 "老纪的技术唠嗑局",会持续更新和 OceanBase 相关的各种技术内容.欢迎感兴趣的朋友们关注! 定场诗< ...

  3. Vue 注意事项

    Top 1 v-once:标签的内容只改变一次: <span v-once>这个将不会改变: {{ msg }}</span> Top 2 v-html:将内容以HTML格式输 ...

  4. 鸿蒙运动项目开发:封装超级好用的 RCP 网络库(下)—— 实战应用

    鸿蒙核心技术##运动开发## Remote Communication Kit(远场通信服务) 在之前的文章中,我们详细介绍了如何封装一个功能完备的 RCP 网络库,并探讨了其核心功能和高级特性.在本 ...

  5. 四、设备修改开机logo

    2.1.修改开机logo 图片文件路径 (替换以下文件): ./kernel/logo.bmp ./kernel/logo_kernel.bmp 设备树配置路径(配置为开启显示logo): ./boo ...

  6. ATE测试工程师是做什么的?

    这是IC男奋斗史的第28篇原创 本文1437字,预计阅读4分钟. 前两天我们一个做封装的同事问我说,目前ATE测试工程师在就业市场上很火,很多公司都在急招,猎头也让他帮忙有偿推荐候选人.ATE测试工程 ...

  7. 【8*】CDQ分治学习笔记

    前言 一直感觉 CDQ 分治是一个很高级的算法,但其实 CDQ 分治的思想早就接触过了.其实,也不是很困难嘛. 此类知识点大纲中并未涉及,所以[8]是我自己的估计,后带星号表示估计,仅供参考. CDQ ...

  8. Codeforces Round #708 (Div. 2) ABC1C2题解

    A. Meximization 第i位优先放等于i-1的,没有的话就后面随便填了. view code #include<iostream> #include<string> ...

  9. Claude Code与MCP:让AI拥有超能力的完全指南

    前言:什么是MCP?为什么你需要它? 想象一下,如果Claude是一个超级聪明的助手,那么MCP(Model Context Protocol)就是给它装上了各种神奇的"义肢".就 ...

  10. 【CompletableFuture 终极指南】从原理到生产实践

    引言:异步编程的演进之路 在当今高并发.分布式系统盛行的时代,异步编程已成为现代Java开发的必备技能.Java 8引入的CompletableFuture不仅解决了传统Future的阻塞问题,更提供 ...