亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? plcirc.mc

?? microstation MDL入門指導手冊!
?? MC
字號:
/*-------------------------------------------------------------------+
|   Copyright (c) 1991, Mach N. Dinh-Vu, All Rights Reserved         |
|   Program   : plcirc.mc                                            |
|   Revision  : 1.0.a                                                |
|   UpgradeToV8 : MicroStationFan   2006/05                          |
+--------------------------------------------------------------------+
|   Example MDL function to place a circle around                    |
|   a text string with a leader line and an arrowhead                |
+-------------------------------------------------------------------*/
/*-------------------------------------------------------------------+
|   Include   Files                                                  |
+-------------------------------------------------------------------*/
#include <mdl.h>        /* system include files */
#include <msrmgr.h>
#include <stdlib/math.h>
#include <stdlib/string.h>
#include <mscell.fdf>
#include <mscnv.fdf>
#include <mscurrtr.fdf>
#include <mselemen.fdf>
#include <mselmdsc.fdf>
#include <msmisc.fdf>
#include <msoutput.fdf>
#include <msparse.fdf>
#include <msstate.fdf>
#include <msvec.fdf>
#include "plcirc.h"

/*-------------------------------------------------------------------+
|   Private Global variables                                         |
+-------------------------------------------------------------------*/
static char textin[128];
Dpoint3d    pntP[3];

/*-------------------------------------------------------------------+
|   name    main                                                    |
+-------------------------------------------------------------------*/
Private void main ( void )
{
   RscFileHandle  rfHandle;

   /* load our command tabla */
   if (mdlParse_loadCommandTable (NULL) == NULL)
      mdlOutput_error ("Unable to load command table.");
   mdlResource_openFile (&rfHandle, NULL, FALSE);
   mdlOutput_error ("Enter PLACE TCIRC to start");
}
/*-------------------------------------------------------------------+
|   name    constIntersectionPoint                                   |
+-------------------------------------------------------------------*/
Private void constIntersectionPoint
(
Dpoint3d    *intersectionPt,      /* intersection point on circle */
double      *radius,              /* radius of circle */
Dpoint3d    *centerPt,            /* center of circle */
Dpoint3d    *directionPt          /* end point of arrowhead */
)
{
   Dpoint3d     dirVector;

   mdlVec_subtractPoint (&dirVector, directionPt, centerPt);
   mdlVec_normalize (&dirVector);
   mdlVec_scale (&dirVector, &dirVector, *radius);
   mdlVec_addPoint (intersectionPt, centerPt, &dirVector);
}
/*-------------------------------------------------------------------+
|    name    generateImage - dynamic function for complex case.      |
+-------------------------------------------------------------------*/
Private int generateImage
(
Dpoint3d     *pt,
int          view,
int          drawMode
)
{
   MSElementDescr  *elmDP;
   MSElementUnion   el;
   Dpoint3d         origin;
   Dpoint3d         tPts[3];
   double           zangle, radius, txtHeight;
   ULong            arrowsize, chheight;

   mdlParams_getActive ((double *)&txtHeight, ACTIVEPARAM_TEXTHEIGHT);
   chheight = (ULong)txtHeight;
   arrowsize = chheight / 2;
   radius = chheight * 2;
   pntP[1] = *pt;

   mdlCurrTrans_begin ();
   mdlCurrTrans_identity ();
   mdlCurrTrans_translateOrigin (&pntP[0]);
   mdlCurrTrans_invtransPointArray(tPts, pntP, 2);

   origin = tPts[1];        /* origin of text */
   mdlCell_create (&el, L"plcirc", &origin, FALSE);
   mdlElmdscr_new (&elmDP, NULL, &el);
   mdlText_create (&el, NULL, textin, &tPts[1], NULL, NULL, NULL, NULL);
   mdlElmdscr_appendElement (elmDP, &el);

   constIntersectionPoint (&tPts[1], &radius, &origin, &tPts[0]);
   mdlLine_create (&el, NULL, tPts);
   mdlElmdscr_appendElement (elmDP, &el);

   /* Create arrowhead */
   mdlEllipse_create (&el, NULL, &origin, radius, radius, NULL, 0);
   mdlElmdscr_appendElement (elmDP, &el);

   /* calculate angle of line */
   zangle = atan2 ((tPts[0].y-tPts[1].y), (tPts[0].x-tPts[1].x));
   mdlCurrTrans_rotateByAngles (0.0, 0.0, zangle);

   /* Create arrowhead */
   tPts[1]   = tPts[0];
   tPts[2].x = tPts[0].x - arrowsize;
   tPts[2].y = tPts[0].y - (arrowsize/2);
   tPts[0].x -= arrowsize;
   tPts[0].y += arrowsize/2;

   mdlLineString_create (&el, NULL, tPts, 3);
   mdlElmdscr_appendElement (elmDP, &el);
   mdlElmdscr_display (elmDP, 0, drawMode);
   if (drawMode == NORMALDRAW)
   {
      mdlElmdscr_add (elmDP);
   }
   mdlElmdscr_freeAll (&elmDP);
   mdlCurrTrans_end( );
   return  SUCCESS;
}
/*-------------------------------------------------------------------+
|   name    keyinText                                                |
+-------------------------------------------------------------------*/
Private void  keyinText (char *cmdStrP)
{
   if (!*statedata.cmdstring)
      return;
   strncpy (textin, statedata.cmdstring, sizeof(textin));
}
/*-------------------------------------------------------------------+
|   name    placeCirc_secondPoint                                    |
+-------------------------------------------------------------------*/
Private void   placeCirc_secondPoint
(
Dpoint3d     *pt,
int          view
)
{
   generateImage (pt, view, NORMALDRAW);
}
/*--------------------------------------------------------------------------+
|   name    placeCirc_done                                                  |
+--------------------------------------------------------------------------*/
Private void   placeCirc_done (void)
{
   mdlState_restartCurrentCommand ();
}
/*--------------------------------------------------------------------------+
|   name     placeCirc_firstPoint                                           |
+--------------------------------------------------------------------------*/
Private void   placeCirc_firstPoint
(
Dpoint3d      *pt,
int           view
)
{
   pntP[0] = *pt;    /* save first point */

   /* Set the datapoint state function for the second point. */
   mdlState_setFunction (STATE_KEYIN, keyinText);
   mdlState_setFunction (STATE_DATAPOINT, placeCirc_secondPoint);
   mdlOutput_rscPrintf  (MSG_PROMPT, NULL, 0, 3);
   /* setup dynamics for the second point */
   mdlState_setFunction (STATE_COMPLEX_DYNAMICS, generateImage);
}
/*--------------------------------------------------------------------------+
|   name       placeCirc_start                                              |
+--------------------------------------------------------------------------*/
cmdName       placeCirc_start (void)
cmdNumber     CMD_PLACE_TCIRC
{
   mdlState_startPrimitive (placeCirc_firstPoint, placeCirc_start, 1, 2);
   return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人成网站精品片在线观看| 欧美久久久影院| 视频一区视频二区中文| 国产精品麻豆欧美日韩ww| 91精品国产aⅴ一区二区| 99riav一区二区三区| 国产精品一区在线观看你懂的| 丝袜美腿亚洲色图| 一区二区三区四区视频精品免费 | 蓝色福利精品导航| 一区二区三区欧美| 欧美激情一区二区三区蜜桃视频| 欧美日韩在线直播| 91污片在线观看| 高清国产一区二区| 国产999精品久久| 成人免费毛片a| 色偷偷久久人人79超碰人人澡| 成人国产精品免费网站| 成人av综合一区| 国产成人av一区二区| 国产一区在线不卡| 成人免费av在线| 一本久久综合亚洲鲁鲁五月天| 色欧美日韩亚洲| 欧美日韩久久一区二区| 久久久精品国产免费观看同学| 欧美男生操女生| 欧美精品在线视频| 日韩欧美在线123| www久久久久| 亚洲欧美日韩久久精品| 天天影视色香欲综合网老头| 久久99国产乱子伦精品免费| 国产麻豆成人精品| 欧美日韩日本视频| 久久久久久亚洲综合影院红桃| 中文字幕亚洲一区二区va在线| 一区二区三区高清在线| 久久国产精品无码网站| 97超碰欧美中文字幕| 日韩午夜三级在线| 日韩美女精品在线| 国产做a爰片久久毛片| 欧美在线视频全部完| 国产三级一区二区| 久久精品噜噜噜成人av农村| 91福利社在线观看| 国产精品久久看| 国产主播一区二区三区| 91精品国产免费| 亚洲愉拍自拍另类高清精品| 国产.欧美.日韩| 久久综合九色综合97婷婷| 亚洲高清视频的网址| 成人综合在线观看| 日韩三级在线免费观看| 亚洲gay无套男同| 色94色欧美sute亚洲线路二| 欧美日韩国产综合视频在线观看 | 欧美日韩专区在线| 亚洲欧美日韩国产中文在线| 粉嫩aⅴ一区二区三区四区五区| 日韩精品一区二区三区四区| 日韩制服丝袜先锋影音| 欧美亚洲日本国产| 日韩理论在线观看| 国产一区不卡视频| 国产精品亚洲а∨天堂免在线| 久久精工是国产品牌吗| 美日韩一区二区三区| 成人黄动漫网站免费app| 欧美丰满美乳xxx高潮www| 在线成人高清不卡| 一区二区三区在线视频观看58| 一本大道久久a久久综合| 亚洲精品一二三四区| 欧美在线免费观看视频| 五月天一区二区三区| 日韩欧美精品在线视频| 国产精品99久久久久久久女警 | 成人av资源下载| 香蕉成人啪国产精品视频综合网| 91精品久久久久久久99蜜桃 | 国产精品一二三四区| 国产精品乱码妇女bbbb| 精品视频在线免费观看| 精品写真视频在线观看| 中文一区二区完整视频在线观看| 日韩欧美国产综合| 99久久综合精品| 另类人妖一区二区av| 亚洲欧美区自拍先锋| 精品国产91乱码一区二区三区| 91视视频在线观看入口直接观看www| 亚洲电影你懂得| 中文字幕成人网| 欧美mv日韩mv亚洲| 欧美日韩精品一区视频| 国产成人精品综合在线观看| 亚洲不卡一区二区三区| 亚洲欧洲三级电影| 久久精品这里都是精品| 3atv一区二区三区| 在线观看亚洲a| 色综合视频一区二区三区高清| 亚洲男人的天堂一区二区| 成人黄色综合网站| 亚洲精品乱码久久久久| 麻豆精品一区二区av白丝在线| 一区二区免费在线| 亚洲人一二三区| 最新日韩在线视频| 久久亚洲一区二区三区明星换脸| 欧美日韩色一区| 成人免费的视频| 国产精品一区二区久激情瑜伽| 中文字幕不卡在线播放| 国产精品污网站| 国产亚洲一本大道中文在线| 久久人人超碰精品| 久久久久久久久久久黄色| 久久亚洲综合av| 欧美国产精品久久| 久久久国产精品麻豆| 欧美视频一二三区| 国产盗摄一区二区| 国产日韩精品久久久| 69p69国产精品| 日韩一区二区三免费高清| 91精品国产色综合久久久蜜香臀| 欧美日韩成人综合在线一区二区| 欧美日韩国产高清一区二区三区 | 成人不卡免费av| 在线观看免费视频综合| 在线中文字幕一区| 成人动漫一区二区在线| 黄色精品一二区| 国产曰批免费观看久久久| 亚洲va欧美va人人爽| 久久99精品久久久久久国产越南| 狠狠色狠狠色综合| 91电影在线观看| 精品国产区一区| 亚洲精品一二三| 精品一区二区av| 色www精品视频在线观看| 久久新电视剧免费观看| 亚洲美女屁股眼交3| 国产在线精品一区二区夜色| 欧美色精品天天在线观看视频| 久久在线观看免费| 婷婷中文字幕一区三区| 波波电影院一区二区三区| 精品国产成人系列| 视频一区二区中文字幕| 色婷婷综合久久久久中文一区二区 | 麻豆专区一区二区三区四区五区| 99久久久无码国产精品| 国产婷婷色一区二区三区四区| 日韩一区欧美二区| 91年精品国产| 中文字幕在线一区免费| 成人免费av在线| 国产欧美日韩在线视频| 国产在线看一区| 日韩你懂的在线观看| 美日韩一级片在线观看| 成人一区二区三区视频在线观看| 国产69精品久久久久777| 欧美精品日日鲁夜夜添| 久久中文娱乐网| 国产三级一区二区| 日韩电影免费在线观看网站| 91亚洲精品久久久蜜桃网站| 日韩手机在线导航| 久久综合精品国产一区二区三区 | 日韩网站在线看片你懂的| 久久久91精品国产一区二区精品| 精品一区二区在线观看| 精品久久一区二区三区| 国产成人日日夜夜| 综合久久久久综合| 欧美老肥妇做.爰bbww| 免费在线一区观看| 国产精品狼人久久影院观看方式| 不卡一区中文字幕| 亚洲电影一区二区三区| 欧美一区二区三区成人| 成人精品鲁一区一区二区| 国产三级一区二区| 欧美zozozo| 日韩午夜在线播放| 三级精品在线观看| 国产精品网站在线播放| 欧美专区日韩专区| 国产另类ts人妖一区二区| 夜夜揉揉日日人人青青一国产精品 | 亚洲成人av在线电影| 欧美一区二区成人|