Blame toonz/sources/stdfx/igs_maxmin.h
|
Shinya Kitaoka |
810553 |
#pragma once
|
|
Shinya Kitaoka |
810553 |
|
|
Toshihiro Shimizu |
890ddd |
#ifndef igs_maxmin_h
|
|
Toshihiro Shimizu |
890ddd |
#define igs_maxmin_h
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#ifndef IGS_MAXMIN_EXPORT
|
|
Toshihiro Shimizu |
890ddd |
#define IGS_MAXMIN_EXPORT
|
|
Toshihiro Shimizu |
890ddd |
#endif
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
namespace igs {
|
|
Shinya Kitaoka |
120a6e |
namespace maxmin {
|
|
Toshihiro Shimizu |
890ddd |
IGS_MAXMIN_EXPORT void convert(
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
const unsigned char *inn, unsigned char *out
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const int height, const int width, const int channels, const int bits
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const unsigned char *ref
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const int ref_bits
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const int ref_mode
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const double radius
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const double smooth_outer_range
|
|
Shinya Kitaoka |
120a6e |
/* smooth_outer_rangeは
|
|
Shinya Kitaoka |
120a6e |
0だとスムースさはなく、隣接ピクセルが現れた瞬間変化
|
|
Shinya Kitaoka |
120a6e |
1だとスムースな変化となる。元の形状を維持
|
|
Shinya Kitaoka |
120a6e |
1より大きいと影響の範囲がひろがり絵はぼやけてくる
|
|
Shinya Kitaoka |
120a6e |
*/
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const int polygon_number
|
|
Shinya Kitaoka |
120a6e |
/* polygon_numberで3以上の値で
|
|
Shinya Kitaoka |
120a6e |
半径radiusの円に内接する多角形となる
|
|
Shinya Kitaoka |
120a6e |
絵では、円の右端が開始点
|
|
Shinya Kitaoka |
120a6e |
*/
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const double roll_degree
|
|
Shinya Kitaoka |
120a6e |
/* roll_degreeがプラスで時計回り方向に回転する
|
|
Shinya Kitaoka |
120a6e |
*/
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
/* 処理の方法、動作スイッチ(action type/sw) */
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const bool min_sw
|
|
Shinya Kitaoka |
120a6e |
/* min_sw==trueだと、小さい値のピクセルを拡大する
|
|
Shinya Kitaoka |
120a6e |
falseなら、大きい値のピクセルを拡大する
|
|
Shinya Kitaoka |
120a6e |
*/
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const bool alpha_rendering_sw
|
|
Shinya Kitaoka |
120a6e |
/* alpha_rendering_sw==trueなら、
|
|
Shinya Kitaoka |
120a6e |
alphaチャンネルにも処理を行う。
|
|
Shinya Kitaoka |
120a6e |
*/
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const bool add_blend_sw
|
|
Shinya Kitaoka |
120a6e |
/* add_blend_sw==trueだと、黒が入り込むべきところに、
|
|
Shinya Kitaoka |
120a6e |
alphaのマスクによってエッジが残ってしまう。
|
|
Shinya Kitaoka |
120a6e |
よってfalse固定
|
|
Shinya Kitaoka |
120a6e |
*/
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
/* 高速化のためのスレッド指定(thread count for speed up) */
|
|
Shinya Kitaoka |
120a6e |
,
|
|
Shinya Kitaoka |
120a6e |
const int number_of_thread
|
|
Shinya Kitaoka |
120a6e |
);
|
|
Toshihiro Shimizu |
890ddd |
}
|
|
Toshihiro Shimizu |
890ddd |
}
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#endif
|