Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - Русский

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Scilab help >> Graphics > Datatips > datatipInitStruct

datatipInitStruct

指定したポリラインに関するdatatip構造体を初期化する.

呼び出し手順

ok=datatipInitStruct(curve_handle,varargin)

パラメータ

curve_handle

datatipsと互換性があるエンティティのハンドル

varargin

datatipsデータ構造体のフィールドを追加またはカスタマイズする際に使用される 一連の対(<field name>,<field value>)

説明

この関数は,polylineエンティティのuser_sataフィールドに保存されるtips用の データ構造体を作成する際に datatipCreateによりコールされます.

この関数をコールするのは,datatipsデータ構造体フィールドをカスタマイズしたいユーザ のみです.

datatip データ構造体

datatipsデータ構造体は少なくとも以下のフィールドを有する"datatips" 型のtlist です.

interpolate

論理値で, tipsの位置をメッシュ点の間で補間するかどうかを指定します.

replace

論理値で,新しいtipを追加する際に他のtipを消去するかどうかを指定します.

formatfunction

Scilab関数で, datatipsに表示されるテキストを整形する際に コールされます.この関数は以下のようにコールされます: str=datatipDefaultDisplay(curve_handle,pt,index) ただし, curve_handle はポリラインまたは曲面のハンドル, pt は点の座標, index は データの中の点のインデックス(補間モードの場合は空)です.

tips

ハンドルの配列. これらの各々は曲線の指定されたtipを指します.

プログラマは,オプション引数datatipInitStruct vararginにより 他のフィールドをdatatipsデータ構造体に追加することが できます.

参照

  • datatipCreate — プログラムによりポリラインのデータ情報を作成する
  • datatips — プロットされた曲線に情報(tips)を配置,編集するためのツール.

t=linspace(0,10,1000);
clf();
plot(t.*sin(t),t.*cos(t),1.5*t.*sin(t),1.5*t.*cos(1.5*t));
e=gce();
p1=e.children(1);//ポリラインのハンドルを取得
p2=e.children(2);//ポリラインのハンドルを取得

function str=mytipfmt(curve, pt, index)
  ds=datatipGetStruct(curve)
  if index<>[] then
    t=ds.param(index);
  else //interpolated
    [d,ptp,i,c]=orthProj(curve.data,pt);
    t=ds.param(i)+(ds.param(i+1)-ds.param(i))*c;
  end
  str=msprintf("%s\nt=%-0.3g",ds.name,t);
endfunction

ok=datatipInitStruct(p1,"formatfunction","mytipfmt","param",t,"name","spiral");
ok=datatipInitStruct(p2,"formatfunction","mytipfmt","param",t,"name","curve");

datatipCreate(p1,500);
datatipCreate(p1,900);
datatipCreate(p2,750);

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Oct 01 17:40:34 CEST 2012