[仮想の水鏡] , Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり
Python(パイソン) プログラム作ってみた インデックス へ
-----
2024.10.28 presented in [note] ( //note.com/runningWater/ )
2024.10.30 rewritten
----------
1 はじめに
これ以降に記述されている内容は、このようなコンピューター・プログラムを制作した、というような事を、ただ、述べているに過ぎない。
以下の記述を読んだ人が、それを単に参考にする、というのであれば、問題は無いと、思われる。
しかし、記述されている内容に沿って、その人が、そこに記されているのと同様の制作や作業を行った際に、その制作、作業、コンピューターの作動の結果、使用されたコンピューター等、様々な方面において、何らかの問題が発生しない、という保証は、全くない。
その制作、作業、コンピューターの作動の結果、その人や、その人が所属している組織、その人が使用した様々な機器、インフラストラクチャー等の、身の上にどのような事が起ころうとも、私は一切、責任を負わない。
このプログラムは、Python(パイソン) 言語を使って、記述されている。
----------
2 どのようなものを作ったのか
[Fig 1](下記)の、上部にある画像から、
[Fig 1]下部にある画像を、作成した。
画像の下部で、[水面に映る月]を表現したかった、デザインに習熟している人であれば、もっと、巧みに表現できるのかもしれない。
上記の画像が作成されていった手順は、下図に示すようなものである。
(1) 作製の行程は、画像1 からのスタートとなる。
(2) 画像1 から 画像2 が、トリミングして作られた。これは、最終段階での生産物(画像9)の、上半部分を、形成することに使用されることになるだろう。
(3) 画像1 から 画像3 が、トリミングして作られた、上下反転させながら。これは、最終段階での生産物(画像9)の、下半部分を、形成することに使用されることになるだろう。
(4) 画像3 と 画像4 をミックスして、画像5 が、作られた。[水面からの反映]であることを表すために、このように、画像のミックスが、行われた。
(5) 画像2 と 画像5 より、画像6 が、作られた。
(6) 画像6 と 画像7(パターン画像として使用)、画像8 (カバー用の画像として使用)より、画像9 が、作られた。
----------
3 構成
このモジュール群は、下記のモジュールより、構成されている。
[ TestMakeImageDataOfMizukagami ]
[ MakeImageDataOfMizukagami ]
以降に、これらのモジュールの内容を、記す。
これらのモジュールは、必要に応じて、下記に解説されているモジュールを、使用している。
[画像をトリミングする、画像の反転指定も可] , Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり
[画像を、別の画像に、重ね塗りする・機能強化 版] , Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり
[[画像処理, OpenCV2 使用] を 行う, 機能追加版, 多角形(内部ぬりつぶし)描画機能を追加] , Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり
Python(パイソン) ,ソースプログラムリスト あり ,プログラム作ってみた ,[エラー処理] を 行う
----------
----------
4 [ TestMakeImageDataOfMizukagam ]
ファイル名 [ TestMakeImageDataOfMizukagam.py ]
----------
import ImageDataTwoDimensionHandlingV3
import MakeImageDataOfMizukagami
module_name = "TestMakeImageDataOfMizukagami"
abs_path_of_directory_Top = "E:ForPython/ForTest/Test_D/"
#------------------------------
abs_path_of_ImageDataFile_UpperSide_half \
= abs_path_of_directory_Top + "Moon_1200_600.png"
abs_path_of_ImageDataFile_WaterRefliction \
= abs_path_of_directory_Top + "Water_1000_500.png"
abs_path_of_ImageDataFile_for_covering \
= abs_path_of_directory_Top + "Pond_1000_1000.png"
abs_path_of_ImageDataFile_Pattern \
= abs_path_of_directory_Top + "Pond_Pattern_1000_1000.png"
abs_path_of_ImageDataFile_Base \
= abs_path_of_directory_Top + "Base_1000_1000.png"
list_directed_x_and_y_on_PatternImageData = [ 10 , 480 ]
list_setting_location_on_BaseImageData = [ 0 , 500 ]
list_triming_From_To_xy = [ [ 100 , 50 ] , [ 1099 , 549 ] ]
#------------------------------------------------
ins_ImageDataTwoDimensionHandlingV3 = \
MakeImageDataOfMizukagami \
.make_ImageDatas ( \
abs_path_of_ImageDataFile_UpperSide_half
, list_triming_From_To_xy
, abs_path_of_ImageDataFile_WaterRefliction
, abs_path_of_ImageDataFile_for_covering
, abs_path_of_ImageDataFile_Pattern
, abs_path_of_ImageDataFile_Base
, list_directed_x_and_y_on_PatternImageData
, list_setting_location_on_BaseImageData
)
ins_ImageDataTwoDimensionHandlingV3 \
.write_loaded_image_data_to_directed_path ( \
module_name
, "_____"
, ( abs_path_of_directory_Top \
+ "Output.png" )
)
#======================================
----------
----------
5 [ MakeImageDataOfMizukagami ]
ファイル名 [ MakeImageDataOfMizukagami.py ]
----------
----------
import MakeTrimedImageData
import CopyAndInsertImageDataV3
import ImageDataTwoDimensionHandlingV3
#=====================================
# MakeImageDataOfMizukagami
#=====================================
global_module_name = "MakeImageDataOfMizukagami"
global_abs_path_of_directory_Top = "E:ForPython/ForTest/Test_D/"
#----------------------------------------------
def make_ImageDatas ( \
arg_abs_path_of_ImageDataFile_UpperSide_half
, arg_list_triming_From_To_xy
, arg_abs_path_of_ImageDataFile_WaterReflection
, arg_abs_path_of_ImageDataFile_for_covering
, arg_abs_path_of_ImageDataFile_Pattern
, arg_abs_path_of_ImageDataFile_Base
, arg_list_directed_x_and_y_on_PatternImageData
, arg_list_setting_location_on_BaseImageData
) :
function_name = "make_ImageDatas"
global global_module_name
global global_abs_path_of_directory_Top
print ( "==================================" )
print ( "Enter into , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
ins_ImageDataTwoDimensionHandlingV3_for_make_UpperSide_half \
= ImageDataTwoDimensionHandlingV3 \
.ImageDataTwoDimensionHandlingV3 ( \
global_module_name
, function_name
)
ins_ImageDataTwoDimensionHandlingV3_for_make_UpperSide_half \
.load_image_data ( \
global_module_name
, function_name
, arg_abs_path_of_ImageDataFile_UpperSide_half
)
#------------------------------
ins_ImageDataTwoDimensionHandlingV3_WaterReflection \
= ImageDataTwoDimensionHandlingV3 \
.ImageDataTwoDimensionHandlingV3 ( \
global_module_name
, function_name
)
ins_ImageDataTwoDimensionHandlingV3_WaterReflection \
.load_image_data ( \
global_module_name
, function_name
, arg_abs_path_of_ImageDataFile_WaterReflection
)
#------------------------------
ins_ImageDataTwoDimensionHandlingV3_for_covering \
= ImageDataTwoDimensionHandlingV3 \
.ImageDataTwoDimensionHandlingV3 ( \
global_module_name
, function_name
)
ins_ImageDataTwoDimensionHandlingV3_for_covering \
.load_image_data ( \
global_module_name
, function_name
, arg_abs_path_of_ImageDataFile_for_covering
)
#------------------------------
ins_ImageDataTwoDimensionHandlingV3_Pattern \
= ImageDataTwoDimensionHandlingV3 \
.ImageDataTwoDimensionHandlingV3 ( \
global_module_name
, function_name
)
ins_ImageDataTwoDimensionHandlingV3_Pattern \
.load_image_data ( \
global_module_name
, function_name
, arg_abs_path_of_ImageDataFile_Pattern
)
#------------------------------
ins_ImageDataTwoDimensionHandlingV3_Base \
= ImageDataTwoDimensionHandlingV3 \
.ImageDataTwoDimensionHandlingV3 ( \
global_module_name
, function_name
)
ins_ImageDataTwoDimensionHandlingV3_Base \
.load_image_data ( \
global_module_name
, function_name
, arg_abs_path_of_ImageDataFile_Base
)
#------------------------------
# make ImageData of [ UpperSide_half ]
# no flip
ins_ImageDataTwoDimensionHandlingV3_UpperSide_half = \
MakeTrimedImageData \
.make_ins_ImageDataTwoDimensionHandlingV3_trimed ( \
ins_ImageDataTwoDimensionHandlingV3_for_make_UpperSide_half
, arg_list_triming_From_To_xy
, "N" #do_flip
, " " #flipping_direction
)
ins_ImageDataTwoDimensionHandlingV3_UpperSide_half \
.write_loaded_image_data_to_directed_path ( \
global_module_name
, function_name
, ( global_abs_path_of_directory_Top + "Output_UpperSide_half.png" )
)
#------------------------------------------
# make trimed ImageData
# , flip [Top _ Bottom ] ( for make mirror reflection on water surface )
ins_ImageDataTwoDimensionHandlingV3_LowerSide_half = \
MakeTrimedImageData \
.make_ins_ImageDataTwoDimensionHandlingV3_trimed ( \
ins_ImageDataTwoDimensionHandlingV3_for_make_UpperSide_half
, arg_list_triming_From_To_xy
, "Y" #do_flip
, "T" #flipping_direction
)
ins_ImageDataTwoDimensionHandlingV3_LowerSide_half \
.write_loaded_image_data_to_directed_path ( \
global_module_name
, function_name
, ( global_abs_path_of_directory_Top + "Output_LowerSide_half.png" )
)
#------------------------------------------------
# make WaterReflection colored ImageData
ins_ImageDataTwoDimensionHandlingV3_LowerSide_half_WaterReflection = \
make_ImageData_WaterReflection_colored (
ins_ImageDataTwoDimensionHandlingV3_LowerSide_half
, ins_ImageDataTwoDimensionHandlingV3_WaterReflection
)
ins_ImageDataTwoDimensionHandlingV3_LowerSide_half_WaterReflection \
.write_loaded_image_data_to_directed_path ( \
global_module_name
, function_name
, ( global_abs_path_of_directory_Top \
+ "Output_LowerSide_half_WaterReflection.png" )
)
#---------------------------------------------------------
# make ImageData ( connected , UpperSide and LowerSide )
ins_ImageDataTwoDimensionHandlingV3_connected = \
make_connected_ImageData ( \
ins_ImageDataTwoDimensionHandlingV3_UpperSide_half
, ins_ImageDataTwoDimensionHandlingV3_LowerSide_half_WaterReflection
, ins_ImageDataTwoDimensionHandlingV3_Base
, arg_list_setting_location_on_BaseImageData
)
ins_ImageDataTwoDimensionHandlingV3_connected \
.write_loaded_image_data_to_directed_path ( \
global_module_name
, function_name
, ( global_abs_path_of_directory_Top + "Output_connected.png" )
)
#---------------------------------
# make completed ImageData
# covered by pond ImageData
ins_ImageDataTwoDimensionHandlingV3_completed = \
make_ImageData_covered ( \
ins_ImageDataTwoDimensionHandlingV3_connected
, ins_ImageDataTwoDimensionHandlingV3_for_covering
, ins_ImageDataTwoDimensionHandlingV3_Pattern
, arg_list_directed_x_and_y_on_PatternImageData
)
ins_ImageDataTwoDimensionHandlingV3_completed \
.write_loaded_image_data_to_directed_path ( \
global_module_name
, function_name
, ( global_abs_path_of_directory_Top + "Output_completed.png" )
)
#---------------------------------------------------------
return ins_ImageDataTwoDimensionHandlingV3_completed
#================================================
def make_adding_ImageData ( \
arg_ins_ImageDataTwoDimensionHandlingV3_1
, arg_ins_ImageDataTwoDimensionHandlingV3_2
) :
function_name = "make_adding_ImageData"
global global_module_name
print ( "==================================" )
print ( "Enter into , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
ins_CopyAndInsertImageDataV3 = \
CopyAndInsertImageDataV3 \
.CopyAndInsertImageDataV3 ( )
#---------------------------------
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 0 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 0 \
, arg_ins_ImageDataTwoDimensionHandlingV3_1 )
#---------------------------------
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 2 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 2 \
, arg_ins_ImageDataTwoDimensionHandlingV3_2 )
#---------------------------------
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 3 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 3 \
, arg_ins_ImageDataTwoDimensionHandlingV3_2 )
#---------------------------------------
width_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_1 \
.get_width_of_ImageData ( )
height_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_1 \
.get_height_of_ImageData ( )
list_CopySource_From_and_To_xy = \
[ \
[ 0 , 0 ] \
, \
[ \
( width_of_CopySource_ImageData - 1 ) \
, ( height_of_CopySource_ImageData - 1 ) \
] \
]
#----------------------
list_color_copying = [ [ 0 , 0 , 0 ] , [ 253 , 253 , 253 ] ]
scale_rate_CopySource_to_InsertedSide = 1.0
color_rate_CopySource_to_InsertedSide = 1.0
#----------------------------------------
ins_CopyAndInsertImageDataV3 \
.copy_and_insert_ImageData ( \
"N" #arg_use_or_not_PatternImageData
, [ 0 , 0 ] # not used, arg_list_directed_x_and_y_on_PatternImageData
, list_color_copying
, list_CopySource_From_and_To_xy
, scale_rate_CopySource_to_InsertedSide
, color_rate_CopySource_to_InsertedSide
, [ 100 , 100 ] # arg_list_BasicLocation_x_and_y_on_CopySource_ImageData
, [ 0 , 0 ] #not used, arg_list_BasicLocation_x_and_y_on_Pattern_ImageData
, [ 105 , 105 ] # arg_list_BasicLocation_x_and_y_on_InsertedSide_ImageData
, "N" #arg_do_rotation
, 0 # not use, arg_rotation_degree_of_inserting_on_InsertedSide_Source
)
ins_ImageDataTwoDimensionHandlingV3_return \
= ins_CopyAndInsertImageDataV3 \
.get_ImageData ( 3 )
print ( "==================================" )
print ( "Exit from , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
return ins_ImageDataTwoDimensionHandlingV3_return
#-----------------------------------------------------------------
def make_ImageData_WaterReflection_colored ( \
arg_ins_ImageDataTwoDimensionHandlingV3_Source
, arg_ins_ImageDataTwoDimensionHandlingV3_WaterReflection
) :
function_name = "make_ImageData_WaterReflection_colored"
global global_module_name
print ( "==================================" )
print ( "Enter into , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
ins_CopyAndInsertImageDataV3 = \
CopyAndInsertImageDataV3 \
.CopyAndInsertImageDataV3 ( )
#--------------------------------------------
#CopySource ImageData = WaterReflection
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 0 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 0 \
, arg_ins_ImageDataTwoDimensionHandlingV3_WaterReflection )
#InsertedSide ImageData = Source
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 2 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 2 \
, arg_ins_ImageDataTwoDimensionHandlingV3_Source )
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 3 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 3 \
, arg_ins_ImageDataTwoDimensionHandlingV3_Source )
#---------------------------------------
width_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_WaterReflection \
.get_width_of_ImageData ( )
height_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_WaterReflection \
.get_height_of_ImageData ( )
list_CopySource_From_and_To_xy = \
[ \
[ 0 , 0 ] \
, \
[ \
( width_of_CopySource_ImageData - 1 ) \
, ( height_of_CopySource_ImageData - 1 ) \
] \
]
#----------------------
list_color_copying = [ [ 0 , 0 , 0 ] , [ 253 , 253 , 253 ] ]
scale_rate_CopySource_to_InsertedSide = 1.0
#***********************************
color_rate_CopySource_to_InsertedSide = 0.5
#***********************************
#----------------------------------------
ins_CopyAndInsertImageDataV3 \
.copy_and_insert_ImageData ( \
"N" #arg_use_or_not_PatternImageData
, [ 0 , 0 ] # not used, arg_list_directed_x_and_y_on_PatternImageData
, list_color_copying
, list_CopySource_From_and_To_xy
, scale_rate_CopySource_to_InsertedSide
, color_rate_CopySource_to_InsertedSide
, [ 100 , 100 ] # arg_list_BasicLocation_x_and_y_on_CopySource_ImageData
, [ 0 , 0 ] #not used, arg_list_BasicLocation_x_and_y_on_Pattern_ImageData
, [ 100 , 100 ] # arg_list_BasicLocation_x_and_y_on_InsertedSide_ImageData
, "N" #arg_do_rotation
, 0 # not use, arg_rotation_degree_of_inserting_on_InsertedSide_Source
)
ins_ImageDataTwoDimensionHandlingV3_return \
= ins_CopyAndInsertImageDataV3 \
.get_ImageData ( 3 )
print ( "==================================" )
print ( "Exit from , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
return ins_ImageDataTwoDimensionHandlingV3_return
#----------------------------------------------
def make_ImageData_covered ( \
arg_ins_ImageDataTwoDimensionHandlingV3_covered
, arg_ins_ImageDataTwoDimensionHandlingV3_covering
, arg_ins_ImageDataTwoDimensionHandlingV3_Pattern
, arg_list_directed_x_and_y_on_PatternImageData
) :
function_name = "make_ImageData_covered"
global global_module_name
print ( "==================================" )
print ( "Enter into , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
ins_CopyAndInsertImageDataV3 = \
CopyAndInsertImageDataV3 \
.CopyAndInsertImageDataV3 ( )
#--------------------------------------------
#CopySource ImageData
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 0 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 0 \
, arg_ins_ImageDataTwoDimensionHandlingV3_covering )
#Pattern
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 1 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 1 \
, arg_ins_ImageDataTwoDimensionHandlingV3_Pattern )
#InsertedSide ImageData
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 2 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 2 \
, arg_ins_ImageDataTwoDimensionHandlingV3_covered )
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 3 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 3 \
, arg_ins_ImageDataTwoDimensionHandlingV3_covered )
#---------------------------------------
width_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_covering \
.get_width_of_ImageData ( )
height_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_covering \
.get_height_of_ImageData ( )
list_CopySource_From_and_To_xy = \
[ \
[ 0 , 0 ] \
, \
[ \
( width_of_CopySource_ImageData - 1 ) \
, ( height_of_CopySource_ImageData - 1 ) \
] \
]
#----------------------
list_color_copying = [ [ 0 , 0 , 0 ] , [ 253 , 253 , 253 ] ]
scale_rate_CopySource_to_InsertedSide = 1.0
color_rate_CopySource_to_InsertedSide = 1.0
#----------------------------------------
ins_CopyAndInsertImageDataV3 \
.copy_and_insert_ImageData ( \
"Y" #arg_use_or_not_PatternImageData
, arg_list_directed_x_and_y_on_PatternImageData
, list_color_copying
, list_CopySource_From_and_To_xy
, scale_rate_CopySource_to_InsertedSide
, color_rate_CopySource_to_InsertedSide
, [ 100 , 100 ] # arg_list_BasicLocation_x_and_y_on_CopySource_ImageData
, [ 100 , 100 ] # arg_list_BasicLocation_x_and_y_on_Pattern_ImageData
, [ 100 , 100 ] # arg_list_BasicLocation_x_and_y_on_InsertedSide_ImageData
, "N" #arg_do_rotation
, 0 # not use, arg_rotation_degree_of_inserting_on_InsertedSide_Source
)
ins_ImageDataTwoDimensionHandlingV3_return \
= ins_CopyAndInsertImageDataV3 \
.get_ImageData ( 3 )
print ( "==================================" )
print ( "Exit from , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
return ins_ImageDataTwoDimensionHandlingV3_return
#----------------------------------------------
def make_connected_ImageData ( \
arg_ins_ImageDataTwoDimensionHandlingV3_1
, arg_ins_ImageDataTwoDimensionHandlingV3_2
, arg_ins_ImageDataTwoDimensionHandlingV3_Base
, arg_setting_location_on_BaseImageData
) :
function_name = "make_connected_ImageData"
global global_module_name
print ( "==================================" )
print ( "Enter into , Module = " + global_module_name
+ " , function = " + function_name )
print ( "==================================" )
ins_CopyAndInsertImageDataV3 = \
CopyAndInsertImageDataV3 \
.CopyAndInsertImageDataV3 ( )
#===================================
# set ImageData 1, on Base
#===================================
#CopySource ImageData
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 0 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 0 \
, arg_ins_ImageDataTwoDimensionHandlingV3_1 )
#InsertedSide ImageData
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 2 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 2 \
, arg_ins_ImageDataTwoDimensionHandlingV3_Base )
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 3 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 3 \
, arg_ins_ImageDataTwoDimensionHandlingV3_Base )
#---------------------------------------
width_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_1 \
.get_width_of_ImageData ( )
height_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_1 \
.get_height_of_ImageData ( )
list_CopySource_From_and_To_xy_1 = \
[ \
[ 0 , 0 ] \
, \
[ \
( width_of_CopySource_ImageData - 1 ) \
, ( height_of_CopySource_ImageData - 1 ) \
] \
]
#----------------------
list_color_copying = [ [ 0 , 0 , 0 ] , [ 253 , 253 , 253 ] ]
scale_rate_CopySource_to_InsertedSide = 1.0
color_rate_CopySource_to_InsertedSide = 1.0
#----------------------------------------
ins_CopyAndInsertImageDataV3 \
.copy_and_insert_ImageData ( \
"N" #arg_use_or_not_PatternImageData
, [ 0 , 0 ] # not used , arg_list_directed_x_and_y_on_PatternImageData
, list_color_copying
, list_CopySource_From_and_To_xy_1
, scale_rate_CopySource_to_InsertedSide
, color_rate_CopySource_to_InsertedSide
, [ 0 , 0 ] # arg_list_BasicLocation_x_and_y_on_CopySource_ImageData
, [ 0 , 0 ] #not used, arg_list_BasicLocation_x_and_y_on_Pattern_ImageData
, [ arg_setting_location_on_BaseImageData [ 0 ] \
, \
arg_setting_location_on_BaseImageData [ 1 ] \
]
# arg_list_BasicLocation_x_and_y_on_InsertedSide_ImageData
, "N" #arg_do_rotation
, 0 # not use, arg_rotation_degree_of_inserting_on_InsertedSide_Source
)
#===================================
# set ImageData 2, on Base
#===================================
#CopySource ImageData
ins_CopyAndInsertImageDataV3 \
.construct_ImageData ( 0 )
ins_CopyAndInsertImageDataV3 \
.set_ImageData ( 0 \
, arg_ins_ImageDataTwoDimensionHandlingV3_2 )
#---------------------------------------
width_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_2 \
.get_width_of_ImageData ( )
height_of_CopySource_ImageData = \
arg_ins_ImageDataTwoDimensionHandlingV3_2 \
.get_height_of_ImageData ( )
list_CopySource_From_and_To_xy_2 = \
[ \
[ 0 , 0 ] \
, \
[ \
( width_of_CopySource_ImageData - 1 ) \
, ( height_of_CopySource_ImageData - 1 ) \
] \
]
#----------------------
list_color_copying = [ [ 0 , 0 , 0 ] , [ 253 , 253 , 253 ] ]
scale_rate_CopySource_to_InsertedSide = 1.0
color_rate_CopySource_to_InsertedSide = 1.0
#----------------------------------------
ins_CopyAndInsertImageDataV3 \
.copy_and_insert_ImageData ( \
"N" #arg_use_or_not_PatternImageData
, [ 0 , 0 ] # not used , arg_list_directed_x_and_y_on_PatternImageData
, list_color_copying
, list_CopySource_From_and_To_xy_2
, scale_rate_CopySource_to_InsertedSide
, color_rate_CopySource_to_InsertedSide
, [ 0 , 0 ] # arg_list_BasicLocation_x_and_y_on_CopySource_ImageData
, [ 0 , 0 ] #not used, arg_list_BasicLocation_x_and_y_on_Pattern_ImageData
, [ 0 , 0 ] # arg_list_BasicLocation_x_and_y_on_InsertedSide_ImageData
, "N" #arg_do_rotation
, 0 # not use, arg_rotation_degree_of_inserting_on_InsertedSide_Source
)
#==============================
ins_ImageDataTwoDimensionHandlingV3_return \
= ins_CopyAndInsertImageDataV3 \
.get_ImageData ( 3 )
return ins_ImageDataTwoDimensionHandlingV3_return
#============================================
----------
Python(パイソン) プログラム作ってみた インデックス へ
この記事が気に入ったらサポートをしてみませんか?