直线插补C语言程序

直线插补C语言程序

#include "conio.h"

#include "graphics.h"

#include "process.h"

#define Ni_circle 0

#define Shun_circle 1

void init_graph();

void draw_Base_circle();

void draw_cabu_circle();

void close_graph();

void acrroods();

static float x0,y0;

void line_cabu(), draw_line(),draw_line_cabu();

void line_cabu() /*此函数控制直线插步两次*/

{ int i;

init_graph();

sleep(1);

for(i=0;i<2;i++) {

line(0,120,300,120); outtextxy(310,120,"Z");

line(100,10,100,300); outtextxy(110,300,"X");

outtextxy(90,130,"O");

draw_line();

if(i==0)

draw_line_cabu(6);

else draw_line_cabu(2);

gotoxy(50,5);

getch();

cleardevice();

setcolor(WHITE);

}

}

void draw_line()/*画直线*/

{

line(100,120,600,450);

textcolor(YELLOW);

directvideo=0;

gotoxy(45,5); cprintf("Line from:X0 Y0 Z0 ");

gotoxy(45,6); cprintf("Line to :X500 Y0 Z330");

gotoxy(45,7); cprintf("Units :Pixel");

gotoxy(45,8); cprintf("Line now:");

}

void draw_line_cabu(int step)/*关键的直线插补函数*/

{

int Xe=600,Ye=450;

float Fm,Xm=100,Ym=120;

setcolor(RED);

moveto(Xm,Ym);

while(Xm<=Xe&&Ym<=Ye)

{

Fm=(Ym-120)*(Xe-100)-(Xm-100)*(Ye-120);

if(Fm>=0)

Xm=Xm+step;

else

Ym=Ym+step;

lineto(Xm,Ym);

gotoxy(55,8); printf("X%3.0f Y0 Z%3.0f",Xm-100,Ym-120);

delay(1100);

}

}

/* 圆插补部分的函数区*/

void init_graph() /*图形系统初始化*/

{

int gdrive=DETECT,gmode;

initgraph(&gdrive,&gmode,"");

cleardevice();

}

void acrroods() /*屏幕中心坐标*/

{

x0=getmaxx()/2;

y0=getmaxy()/2;

} void draw_Base_circle() /*画圆及写参数*/

{

line(x0-200,y0,x0+200,y0); outtextxy(x0+220,y0,"Z");

插补c语言程序,直线插补C语言程序.doc相关推荐

  1. c语言直线插补原理程序,直线插补算法

    直线插补算法,就是刀具或绘笔每走一步都要和给定的数据进行比对,看该点在次点的上方或者是下方,从而决定下一步该怎么走. 即机床数控系统依照一定方法确定刀具运动轨迹的过程.也可以说,已知曲线上的某些数据, ...

  2. matlab程序 直线插补,无聊写matlab仿真直线插补算法

    本帖最后由 CK345 于 2016-6-24 17:16 编辑 X0 = input('请输入起点横坐标 X\n X0 = '); Y0 = input('请输入起点纵坐标 Y\n Y0 = '); ...

  3. DDA插补算法C语言,DDA直线插补算法在单片机上的实现基于C.doc

    DDA直线插补算法在单片机上的实现基于C /*-------------------------------*/ /*时间2011年11月*/ /*功能:DDA 插补算法在单片机上实现*/ /*作者J ...

  4. C语言定义直线的数据类型,C语言 | 数据类型

    原标题:C语言 | 数据类型 1.变量与常量数据 在程序的世界中,可以让计算机按照指令做很多事情,如进行数值计算.图像显示.语音对话.视频播放.天文计算.发送邮件.游戏绘图以及任何我们可以想象到的事情 ...

  5. 数字积分法直线插补c语言程序,数控课程设计(数字积分法第二象限直线插补程序).docx...

    数字积分法第二象限直线插补程序设计 数字积分法是利用数字积分的方法,计算刀具沿各坐标轴的位移,使得刀具 沿着所加工的轮廓曲线运动 利用数字 积分原 理构成的插 补装置 称为数字积分 器,又称数 字微分 ...

  6. 用C语言代码实现布雷森汉姆直线插补

    布雷森汉姆直线插补是计算机图形学中常见的直线插补算法.以下是用C语言实现布雷森汉姆直线插补的代码示例: #include <stdio.h> #include <math.h> ...

  7. 松下plc FP-XH写的4轴控制程序,其中两个轴做直线插补,已经在12台设备上稳定运行,程序文件包含有plc程序触摸屏程序

    松下plc FP-XH写的4轴控制程序,其中两个轴做直线插补,已经在12台设备上稳定运行,程序文件包含有plc程序触摸屏程序,设备电气图纸清单,还有设备的清晰运行视频,能够帮助你很好的理解程序运行流程 ...

  8. 信捷PLC C语言伺服插补6轴码垛机器人威纶通触摸屏程序

    包括信捷XD5-48T6 PLC程序,TK6071ip威纶通触摸屏程序 梯形图和信捷C语言混编,精典程序,结构好,中文注释,各种插补 id=625610353110&

  9. 三菱Q系列plc,11轴标准程序,包含轴回零,相对定位,绝对定位,程序有两轴直线插补

    三菱Q系列plc,11轴标准程序,包含轴回零,相对定位,绝对定位,程序有两轴直线插补,一共有五组插补,整个程序的模块都有,程序框架符合广大编程人员思维,只要弄明白这个程序,一般的项目都不会无从下手,参 ...

  10. 圆弧插补程序c语言,用C语言写的简易的逐点比较法插补算法,包括直线逐点插补和圆弧插补...

    源文件:https://pan.baidu.com/s/17FQKqn3UaEPQHkmTcOXKOg 提取码:atb2 #include #include #include #include //运 ...

最新文章

  1. 如何处理单元测试产生的数据,下列哪些说法是正确的
  2. UVA1327 King‘s Quest(强连通分量、给王子们匹配公主系列 - 1 )
  3. 物体可见性信息在3D检测中的探索CVPR2020(oral)
  4. scrollview中嵌套listview产生冲突问题
  5. call、bind与apply
  6. (DFS)求出n个数中选择m个数的所有可能
  7. 为什么我们对90后的迎合难以成功?
  8. LeetCode 1379. 找出克隆二叉树中的相同节点(二叉树遍历)
  9. 花生采摘(洛谷P1086题题解,Java描述)
  10. requestmapping配置页面后_SpringBoot2.0 基础案例(03):配置系统全局异常映射处理
  11. 2021计算机职业适应性测试考什么,单招考试面试内容(职业适应性测试)大纲详解(信息技术类)...
  12. pageinfo对合并list进行分页_PageInfo实现分页
  13. c# winform WebBrower 控件中右键获取控件坐标
  14. 敏捷开发生态系统系列之二:敏捷生态系统-计划跟踪 I(跨职能团队-共同估算-每日立会-同行压力)...
  15. 贺利坚老师汇编课程70笔记:端口的读写
  16. STM32cubemx教程及STM32入门(三)定时器
  17. 如何培养孩子的记忆力?猿辅导:这个方法家长一定要知道
  18. 计算机主板清理,电脑主板脏了如何清洗电脑主板才是正确
  19. sapi/cgi/php-cgi,sapi/cgi/php-cgi
  20. 重大危险源可视化GIS管理系统

热门文章

  1. 容积卡尔曼滤波算法 CKF
  2. 市场热门身份证识别性能测评对比
  3. 关于彻底卸载手心输入法的终极操作
  4. dnf时装补丁教程_【时装补丁制作】消灭伸手党!最详细的图文教程~
  5. t-SNE算法解析与简单代码实现
  6. K均值聚类算法(K-Means)
  7. Java 生成二维码名片(Springboot)
  8. PHP完全自学手册(文档教程)
  9. 华为悦盒烧写Ubuntu系统刷机教程
  10. 自动批量删除全部微博(自动翻页加载)