UF_initialize();
//CSYS_ask_wcs
tag_t wcs_id=NULL_TAG;
//CSYS_ask_csys_info
double csys_orign[]={0.0};
//CURVE_create_line
UF_CURVE_line_t line_coords;
tag_t line=NULL_TAG;
//CURVE_create_arc
UF_CURVE_arc_t arc_coords;
tag_t arc=NULL_TAG;
//CURVE_ask_arc_data
UF_CURVE_arc_t ask_arc_coords;
//CURVE_ask_line_data
UF_CURVE_line_t ask_line_coords;
//获取当的wcs坐标系的tag
UF_CSYS_ask_wcs(&wcs_id);
//寻问坐标系的信息(原点和矩阵的tag)
UF_CSYS_ask_csys_info(wcs_id,&arc_coords.matrix_tag,csys_orign);
//CURVE_create_arc
arc_coords.start_angle=10.0*DEGRA;/*注意创建圆弧时,需要在后面乘以弧度,不乘以弧度,不报错不出现圆弧线*/
arc_coords.end_angle=300.0*DEGRA;/* DEGRA .01745329251994328*/
arc_coords.arc_center[]=100.0;
arc_coords.arc_center[]=0.0;
arc_coords.arc_center[]=0.0;
arc_coords.radius=100.0;
//CURVE_create_line
line_coords.start_point[]=0.0;
line_coords.start_point[]=0.0;
line_coords.start_point[]=0.0;
line_coords.end_point[]=100.0;
line_coords.end_point[]=0.0;
line_coords.end_point[]=0.0;
//创建直线
UF_CURVE_create_line(&line_coords,&line);
//创建圆弧
UF_CURVE_create_arc (&arc_coords,&arc);
//圆弧数据
UF_CURVE_ask_arc_data(arc,&ask_arc_coords);
//直线数据
UF_CURVE_ask_line_data (line,&ask_line_coords);
//转换数据(圆弧)
char arc_center[],arc_angle[],arc_radius[],arc_mtx_tag[];
sprintf(arc_center,"圆弧中心为:%f,%f,%f\n",ask_arc_coords.arc_center[],ask_arc_coords.arc_center[],ask_arc_coords.arc_center[]);
sprintf(arc_angle,"圆弧起始角度为:%f,终止角度为:%f\n",ask_arc_coords.start_angle,ask_arc_coords.end_angle);
sprintf(arc_radius,"弧度为:%f\n",ask_arc_coords.radius);
sprintf(arc_mtx_tag,"矩阵tag值为:%d\n",ask_arc_coords.matrix_tag);
//转换数据(直线)
char line_data[];
sprintf(line_data,"直线起始点位置为:%f,%f,%f\n终点位置为:%f,%f,%f\n",ask_line_coords.start_point[],ask_line_coords.start_point[],ask_line_coords.start_point[],ask_line_coords.end_point[],ask_line_coords.end_point[],ask_line_coords.end_point[]);
//打印信息
UF_UI_open_listing_window();
//******************圆弧信息***********************//
UF_UI_write_listing_window(arc_center);
UF_UI_write_listing_window(arc_angle);
UF_UI_write_listing_window(arc_radius);
UF_UI_write_listing_window(arc_mtx_tag);
//******************直线信息***********************//
UF_UI_write_listing_window("\n");
UF_UI_write_listing_window("\n");
UF_UI_write_listing_window(line_data); UF_terminate();

UFUN函数 UF_CURVE函数(UF_CURVE_create_line、UF_CURVE_create_arc、UF_CURVE_ask_arc_data、UF_CURVE_ask_line_data)的更多相关文章

  1. C++虚函数和函数指针一起使用

    C++虚函数和函数指针一起使用,写起来有点麻烦. 下面贴出一份示例代码,可作参考.(需要支持C++11编译) #include <stdio.h> #include <list> ...

  2. Oracle_SQL函数-分组函数

    分组函数 什么是分组函数 分组函数作用于一组数据,并对一组数据返回一个值 组函数类型:主要有6种 AVG - 平均 COUNT - 计数 MAX - 最大 MIN - 最小 SUM - 求和 STDD ...

  3. Oracle_SQL函数-单行函数

    SQL函数 SQL函数分类 SQL函数主要有两种,分为单行函数.多行函数 单行函数:只对一行进行变换,每行返回一个结果.可以转换数据类型,可以嵌套参数可以是一列或一个值 多行函数:多行函数,每次对一组 ...

  4. 12-返回指针的函数&&指向函数的指针

    前言 接下来我只讲指针的最常见用法,比如这一章的内容----返回指针的函数 与 指向函数的指针   一.返回指针的函数 指针也是C语言中的一种数据类型,因此一个函数的返回值肯定可以是指针类型的. 返回 ...

  5. JavaScript 闭包系列二(匿名函数及函数的闭包)

    一. 匿名函数 1. 函数的定义,可分为三种 1) 函数声明方式 function double(x) {     return 2*x; } 2)Function构造函数,把参数列表和函数体都作为字 ...

  6. javascript函数一共可分为五类: ·常规函数 ·数组函数 ·日期函数 ·数学函数 ·字符串函数

    javascript函数一共可分为五类:    ·常规函数    ·数组函数    ·日期函数    ·数学函数    ·字符串函数    1.常规函数    javascript常规函数包括以下9个 ...

  7. 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数

    [源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...

  8. PHP基于数组的分页函数(核心函数array_slice())

    关于数组的分页函数,用数组进行分页的好处是可以方便的进行联合多表查询,只需要将查询的结果放在数组中就可以了以下是数组分页的函数,函数page_array用于数组的分页,函数show_array用于分页 ...

  9. Python入门笔记(19):Python函数(2):函数/方法装饰器

    一.装饰器(decorators) 装饰器的语法以@开头,接着是装饰器函数的名字.可选参数. 紧跟装饰器声明的是被装饰的函数和被装饰的函数的可选参数,如下: @decorator(dec_opt_ar ...

随机推荐

  1. PowerBuilder学习笔记之14用户自定义对象

    教程链接:https://wenku.baidu.com/view/9730d1c7aa00b52acec7ca05.html?re=view&rec_flag=default&sxt ...

  2. Java学习:集合的使用与数组的区别

    ArrayList 集合 ArrayList 集合 ArrayList<String> list = new ArrayList<>(); 对于ArrayList来说,有一个尖 ...

  3. flask异常处理:abort、errorhandler、app_errorhandler,封装全局异常处理

    目录 1. abort() 1.1 使用方式一:传递一个错误码 1.2 使用方式二:传递一个json格式字符串 1.3 使用方式三:传递一个响应体 2. errorhandler 2.1 简单使用: ...

  4. 示例:WPF开发的简单ObjectProperyForm用来绑定实体表单

    原文:示例:WPF开发的简单ObjectProperyForm用来绑定实体表单 一.目的:自定义控件,用来直接绑定实体数据,简化开发周期 二.实现: 1.绑定实体对象 2.通过特性显示属性名称 3.通 ...

  5. Implementing Azure AD Single Sign-Out in ASP.NET Core(转载)

    Let's start with a scenario. Bob the user has logged in to your ASP.NET Core application through Azu ...

  6. c#栈的用法

    栈是一种重要的线性结构,栈和队列是限定插入和删除只能在表的“端点”进行的线性表 –栈的元素必须“后进先出”. –栈的操作只能在这个线性表的表尾进行. –注:对于栈来说,这个表尾称为栈的栈顶(top), ...

  7. C# Dapper 的简单实用

    首先引入dapper  PM>Install-Package Dapper -Version 2.0.4 (可能会出现因版本问题而安装失败详情见官网:https://stackexchange. ...

  8. c# mvc webapi的put报405错误

    程序在本机调试可正常修改,本机是iis11 放到服务器上,报错了:405.服务器iis7.0 返回的错误页面: <!DOCTYPE html PUBLIC "-//W3C//DTD X ...

  9. Jmeter websocket插件安装与使用

    Jmeter websocket插件安装与使用 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试 ...

  10. 2019 花椒直播java面试笔试题 (含面试题解析)

      本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.花椒直播等公司offer,岗位是Java后端开发,因为发展原因最终选择去了花椒直播,入职一年时间了,也成为了面 ...