|
W.Hiroshiさん,
文系人間なので,三角関数とかラジアンとかは,ン十年前に勉強したきりで,
自信ありませんが,Iranoan さんのご示唆をもとに試みに作ってみました。
//----------------------------------------------------------------//
setfloatmode 1;
loaddll "HideMath.dll";
if( imestate ) imeswitch;
#angle = val(input("回転角(時計回り 単位:度)"));
#angle = -#angle * dllfunc( "Pi" ) / 180;
if( selecting ) {
#start = seltoplineno;
#end = selendlineno;
} else {
#start = 1;
#end = linecount2;
}
disabledraw;
movetolineno 1, #start;
while( 1 ) {
$s = gettext2( 0, lineno, linelen2, lineno );
#py = strstr($s, "Y");
#x = val(midstr($s, 1, #py - 1));
#y = val(midstr($s, #py + 1, 99));
call Replace #x, #y;
insert "X" + $x2 + "Y" + $y2;
deleteafter;
movetolineno 1, lineno + 1;
if( lineno == #end ) break;
}
endmacro;
Replace:
##x2 = ##1 * dllfunc( "Cos", #angle ) - ##2 * dllfunc( "Sin", #angle );
##y2 = ##1 * dllfunc( "Sin", #angle ) + ##2 * dllfunc( "Cos", #angle );
$x2 = dllfuncstr( "Format", "%.3lf", ##x2 );
$y2 = dllfuncstr( "Format", "%.3lf", ##y2 );
return;
//----------------------------------------------------------------//
では, (^^)/~
山紫水明
SANSHISUIMEI
|
|