C# 25Dpoint

news/2025/1/15 11:51:57/

C# 25Dpoint ,做一个备份

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace _25Dpoint
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Paint(object sender, PaintEventArgs e){            Graphics g = this.CreateGraphics(); SolidBrush brushBlack = new SolidBrush(Color.Black);g.DrawLine(Pens.Black, 200, 0, 200, 400); //画出直角坐标系的x,y轴g.DrawLine(Pens.Black, 0, 200, 400, 200);float x1 = 20, y1 = 180;   //假设黑点的坐标为20,180 (这个坐标数字是WIN屏幕的坐标,从直角坐标系到WIN屏幕坐标系是不同的,需要转换一下)Point winpoint1 = screen_point(x1, y1); //直角坐标系到WIN屏幕坐标系g.DrawString(winpoint1.X.ToString() + "," + winpoint1.Y.ToString(), Font, brushBlack, winpoint1.X, winpoint1.Y); //显示字符串g.FillEllipse(brushBlack, winpoint1.X, winpoint1.Y, 5, 5);        //显示点float x2 = (float) (x1 * Math.Cos(-45) - y1 * Math.Sin(-45)); //坐标转轴公式 顺时针转45度float y2 = (float) (x1 * Math.Sin(-45) + y1 * Math.Cos(-45)); Point winpoint2 = screen_point(x2, y2);g.FillEllipse(brushBlack, winpoint2.X, winpoint2.Y, 5, 5); //显示字符串g.DrawString(winpoint2.X.ToString() + "," + winpoint2.Y.ToString(), Font, brushBlack, winpoint2.X, winpoint2.Y); //显示转换后的点}public Point screen_point(float cartX, float cartY){Point screenpoint =  new Point();screenpoint.X = (int) cartX + ( 400/2  );screenpoint.Y = (400/2) - (int)cartY;return screenpoint;}}
}


http://www.ppmy.cn/news/1563311.html

相关文章

JAVA:Spring Boot 集成 JWT 实现身份验证的技术指南

1、简述 在现代Web开发中,安全性尤为重要。为了确保用户的身份,JSON Web Token(JWT)作为一种轻量级且无状态的身份验证方案,广泛应用于微服务和分布式系统中。本篇博客将讲解如何在Spring Boot 中集成JWT实现身份验证…

day08_Kafka

文章目录 day08_Kafka课程笔记一、今日课程内容一、消息队列(了解)**为什么消息队列就像是“数据的快递员”?****实际意义**1、产生背景2、消息队列介绍2.1 常见的消息队列产品2.2 应用场景2.3 消息队列中两种消息模型 二、Kafka的基本介绍1、…

Logback日志技术

Logback日志技术 日志 日志(Logging)是软件开发和运维中用于记录系统或应用程序运行期间发生的运行信息、状态变化、错误信息等的一种机制,这种记录的方式就好像我们日常生活中写日记一样。它提供了一种持久化的方式,使得开发者…

webpack04服务器配置

webpack配置 entryoutput filenamepathpublicPath 。。 打包引入的基本路径,,,比如引入一个bundle.js,。引用之后的路径就是 publicPathfilename -devServer:static : 静态文件的位置。。。hostportopencompress : 静态资源是否用gzip压缩hi…

Flutter 多终端测试 自定义启动画面​​​​​​​ 更换小图标和应用名称

多终端测试 flutter devices flutter run -d emulator-5554 flutter run -d emulator-5556 自定义启动画面 之前: 进入assert 3x 生成 1x 2x dart run flutter_native_splash:create dart run flutter_native_splash:remove 现在(flutter_nativ…

vue实现淘宝web端,装饰淘宝店铺APP,以及后端设计成能快速响应前端APP

一、前端实现 实现一个类似于淘宝店铺的装饰应用(APP)是一个复杂的任务,涉及到前端界面设计、拖放功能、模块化组件、数据管理等多个方面。为了简化这个过程,我们可以创建一个基本的 Vue 3 应用,允许用户通过拖放来添…

电梯系统的UML文档02

现在我们来回答用UML 设计电梯系统的实践中遇到的问题:“UML 是一种适合于实时系统的建模语言吗?”我们发现基于上段提到的特征,UML 是适合的但有不足。用UML 设计实时系统有以下问题: •特定硬件及它们特征的定义。 •在对象、任务和硬件层…

AppBarLayout 与 NestedScrollView 的滚动行为不生效

问题描述与处理策略 1、问题描述 如下布局文件&#xff0c;AppBarLayout 与 NestedScrollView 的滚动行为不生效 <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android"http://sch…