新データセット関数
long call_set_line( DRADAT *dra,HDC m_hDC,long num,double xx1,double yy1,double xx2,double yy2,long layer,long group,long color_number,long style_number )
線をデータにセットする。
DRADAT *dra データの管理領域のアドレス。通常はXDRAPTRを使いましょう。 HDC m_hDC 作って表示したい場合にSCREEN->m_hDCと書いてください。 それ以外はNULLにします。 long num セットするデータ位置番号
どこでも構わない場合は-1を使ってください。連続してセットする場合は、戻値のセットされた位置番号にマイナスを付けてコールするとセットが多少早くなります。マイナスの番号を指定すると、絶対値の場所以降でセット出来る場所にセットします。
以下省略 セットした位置番号 < 0:異常終了 なし データ データ
long call_set_arc( DRADAT *dra,HDC m_hDC,long num,double xx,double yy,double rr,double qq1,double qq2,long layer,long group,long color_number,long style_number)
円・円弧をデータにセットする。 DRADAT *dra データの管理領域のアドレス。通常はXDRAPTRを使いましょう。 HDC m_hDC 作って表示したい場合にSCREEN->m_hDCと書いてください。 それ以外はNULLにします。 long num セットするデータ位置番号
どこでも構わない場合は-1を使ってください。連続してセットする場合は、戻値のセットされた位置番号にマイナスを付けてコールするとセットが多少早くなります。マイナスの番号を指定すると、絶対値の場所以降でセット出来る場所にセットします。
以下省略 セットした位置番号 < 0:異常終了 なし データ データ
long call_set_text( DRADAT *dra,HDC m_hDC,long num,const char* moji,long type,double xx,double yy,double width,double height,double distance,double angle,double slant,long origin,long layer,long group,long color_number,long style_number )
線をデータにセットする。 DRADAT *dra データの管理領域のアドレス。通常はXDRAPTRを使いましょう。 HDC m_hDC 作って表示したい場合にSCREEN->m_hDCと書いてください。 それ以外はNULLにします。 long num セットするデータ位置番号
どこでも構わない場合は-1を使ってください。連続してセットする場合は、戻値のセットされた位置番号にマイナスを付けてコールするとセットが多少早くなります。マイナスの番号を指定すると、絶対値の場所以降でセット出来る場所にセットします。
const char* moji セットする文字列 long type 文字列のタイプ。 5:強制的にANKにします。 6:強制的に漢字にします。 以外の数値:適当にセットします。 以下省略 文字列をセットした位置番号 < 0:異常終了 N_ :文字列をセットした位置番号 < 0:異常終了 N1_:セットした文字列データの次の位置番号。 なし データ データ 文字関係関数
long call_moji_set( const char* moji , long num , long type , double xx , double yy , double width , double height , double distance , double angle , double slant , long origin )
文字列をデータにセットする。 const char* moji セットする文字列 long num セットするデータ位置番号
どこでも構わない場合は-1を使ってください。連続してセットする場合は、戻値のセットされた位置番号にマイナスを付けてコールするとセットが多少早くなります。マイナスの番号を指定すると、絶対値の場所以降でセット出来る場所にセットします。
long type ANKなら5、漢字なら6。 5を指定しても漢字が含まれる場合は、自動的に漢字に変わります。 6を指定すると、強制的に漢字に変わります。 double xx 文字の原点位置(ウィンドウ座標) double yy double width 文字の幅(ウィンドウ座標単位) double height 文字の高さ(ウィンドウ座標単位) double distance 文字の間隔(ウィンドウ座標単位) double angle 文字の回転角度(度) double slant 文字の傾斜角度(度) long origin 文字の原点位置コード 属性はアクティブによる 文字列をセットした位置番号 < 0:異常終了 N_ :文字列をセットした位置番号 < 0:異常終了 N1_:セットした文字列データの次の位置番号。 なし データ データ
long call_moji_Get( char* moji , long num , long *type , double *xx , double* yy , double* width , double* height , double* distance , double* angle , double* slant , long *origin )
データから文字列とそのサイズ等を取得する。 char* moji 取得する文字列。文字列のサイズは十分に余裕を持たせてください。通常は、 char moji[2048];位の宣言をしてください。 long num 取得するデータ位置番号 long *type ANKなら5、漢字なら6が戻ります。 double *xx 文字の原点位置(ウィンドウ座標) double *yy double *width 文字の幅(ウィンドウ座標単位) double *height 文字の高さ(ウィンドウ座標単位) double *distance 文字の間隔(ウィンドウ座標単位) double *angle 文字の回転角度(度) double *slant 文字の傾斜角度(度) long *origin 文字の原点位置コード 文字列のバイト数 なし データ データ long call_mojicon_set(MOJI_CONTROL *textatr , long num ); データに文字列をセットする。
MOJI_CONTROL *textatr 文字制御用の構造体のアドレス。下のボールド文字の項目を設定します。
long num セットするデータ位置番号
どこでも構わない場合は-1を使ってください。連続してセットする場合は、戻値のセットされた位置番号にマイナスを付けてコールするとセットが多少早くなります。マイナスの番号を指定すると、絶対値の場所以降でセット出来る場所にセットします。
文字列をセットした位置番号 < 0:異常終了 N_ :文字列をセットした位置番号 < 0:異常終了 N1_:セットした文字列データの次の位置番号。 MOJI_CONTROL構造体 typedef struct s_moji_control{ long hmode ; 高さ入力時の○× double hreal ; 実寸高さ[mm] long hdra ; DRA座標高さ[dra] long wmode 幅入力時の○× double wreal ; 実寸幅[mm] long wdra ; DRA座標幅[dra] long dmode ; 間隔入力時の○× double dreal ; 実寸間隔[mm] long ddra ; DRA座標間隔[dra] long amode ; 回転角度入力時の○× double areal ; 回転角度0-360[deg] double adra ; 回転角度0-360[deg] long smode ; 傾斜角度入力時の○× double sreal ; 傾斜角度0-70,290-360[deg] double sdra ; 傾斜角度0-70,290-360[deg] long omode 原点入力時の○× long oreal ; 原点コード0,1,2,4,5,6,8,9,10 long odra ; 原点コード 0,1,2,4,5,6,8,9,10 long umode ; 原点浮き入力時の○× double ureal ; 実寸原点浮き[mm] long udra ; DRA座標原点浮き[dra] long rmode ; 原点右移動量入力時の○× double rreal ; 実寸原点右移動量[mm] long rdra ; DRA座標原点右移動量[dra] long imode; // Input mode 0:char 1:Point 2:Length 3:Area 4:Angle long tagm_axis ; // Target mode ( Free,Line,Area,Group ) ; long tagm_dist ; // Target mode ( Free,Line,Area,Group ) ; long tagm_area ; // Target mode ( Free,Line,Area,Group ) ; long tagm_angle ; // Target mode ( Free,Line,Area,Group ) ; long link_code ; // 寸法リンクコード long attrib ; // 寸法文字の属性変数 long unit ; // Unit( 0:mm,1:cm,2:m,3:km ) long marume ; // 桁数を有効にする long keta ; // 桁数 long kanma ; // カンマを付ける long toru ; // 最後のゼロをとる long make_moji ; // 文字化する入力時の○× long moji_type ; 5:ANK 6:漢字 double last_length ; 作業用 double sum_length ; 作業用 double sum_area ; 作業用 long area_close ; 作業用0:Open 1:Close double last_angle ; 作業用 char* message ; 画面左上に表示するメッセージ(NEW_STRING関数で作成すること) long nn ; 文字属性取得時の文字データ位置 long replace ; 作成モード 0:書込 1:置換 2:編集 3:寸書: long gcx ; 配置座標[dra] long gcy ; long layer ; 配置レイヤ long group ; 配置グループ番号 long color ; 配置カラー long style ; 配置線種 char* set_string ; 配置文字列(NEW_STRING関数で作成すること) } MOJI_CONTROL ; MOJI_CONTROL* new_moji_control(MOJI_CONTROL* textatr) 文字制御構造体を新しく作ります。
MOJI_CONTROL* textatr 文字制御構造体のアドレス。NULL以外の場合は消去して作り替えたアドレスを返します。
新たに確保した文字制御構造体のアドレス。 最後にリターンする前に消去してください。 textatr = DELETE_MOJI_CONTROL( textatr ) ; データ データ MOJI_CONTROL* DELETE_MOJI_Control(MOJI_CONTROL* textatr) 文字制御構造体を抹殺します。 MOJI_CONTROL* textatr 文字制御構造体のアドレス。 常にNULL。 なし。 データ データ
long CALL_MOJI_Control(char* fnc , MOJI_CONTROL* textatr, char *ini_file_name , char* ini_section_name)
文字制御構造体に対する様々な機能を実行します。 char* fnc , 機能名称 FromDraw 図面から文字属性を取得する GetINI INIファイルから文字属性を取得する SetINI INIファイルに文字属性を書き込む MakeDra RealデータからDraデータを作る MakeReal DraデータからRealデータを作る GetAtr textatr->nnにある文字データの属性を取得する MOJI_CONTROL* textatr, 文字制御構造体のアドレス。 char *ini_file_name , 通常はNULL char* ini_section_name 通常はNULL TRUE/FALSE。 なし。 データ データ