[断面画像を重ね合わせて、物体を3次元表示]の , [仲介役・サブグループ]
[断面画像を重ね合わせて、物体を3次元表示], Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり へ
----------
2024.8.23 presented in [note] ( //note.com/runningWater/ )
2024.9.14 rewritten
----------
1 はじめに
これ以降に記述されている内容は、このようなコンピューター・プログラムを制作した、というような事を、ただ、述べているに過ぎない。
以下の記述を読んだ人が、それを単に参考にする、というのであれば、問題は無いと、思われる。
しかし、記述されている内容に沿って、その人が、そこに記されているのと同様の制作や作業を行った際に、その制作、作業、コンピューターの作動の結果、使用されたコンピューター等、様々な方面において、何らかの問題が発生しない、という保証は、全くない。
その制作、作業、コンピューターの作動の結果、その人や、その人が所属している組織、その人が使用した様々な機器、インフラストラクチャー等の、身の上にどのような事が起ころうとも、私は一切、責任を負わない。
このプログラムは、Python(パイソン) 言語を使って、記述されている。
----------
2 仲介役・サブグループ
これは、全てのサブグループが、円滑に作動していくように、それらの仲介を行うようなものである。
このサブグループは、下記の2個のモジュールから構成されている。
ファイル名 [DataToBeHandedOver.py]
サブグループ間のデータの受け渡しが円滑に行えるように用意された、データを盛るための、容器みたいなものである。
----------
class DataToBeHandedOver :
CV_CLASS_NAME = "DataToBeHandedOver"
#------------------------------------------------------------
# definition of constructer
def __init__( self \
, arg_number_of_items
, arg_list_guide_string_of_items
) :
methode_name = "constructer"
self.iv_number_of_items = arg_number_of_items
self.iv_list_value_for_HandedOver = [ 0 ] * self.iv_number_of_items
self.iv_list_guide_string_of_items = [ " " ] * self.iv_number_of_items
for i in range ( self.iv_number_of_items ) :
self.iv_list_guide_string_of_items [ i ] \
= arg_list_guide_string_of_items [ i ]
#------------------------------------------------------------
def get_value ( self \
, arg_order_number_of_value ) :
methode_name = "get_value"
return ( self.iv_list_value_for_HandedOver \
[ arg_order_number_of_value - 1 ] )
#------------------------------------------------------------
def get_guide_string_of_items ( self \
, arg_order_number_of_value ) :
methode_name = "get_guide_string_of_items"
return ( self.iv_list_guide_string_of_items \
[ arg_order_number_of_value - 1 ] )
#------------------------------------------------------------
def set_value ( self \
, arg_order_number_of_value , arg_value ) :
methode_name = "set_value"
self.iv_list_value_for_HandedOver \
[ arg_order_number_of_value - 1 ] \
= arg_value
----------
ファイル名 [Mediator.py]
サブグループ間の仲介を行う。
----------
import sys
import DisplayImage
import BackYardProcess
import DataInputFormV2
MODULE_NAME = "Mediator"
#------------------------------------------------------------
def initializing_process ( ) :
function_name = " initializing_process"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
BackYardProcess \
.initializing_process ( )
DataInputFormV2 \
.initializing_process ( )
print ( "==================================" )
print ( "Exit from Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
# -----------------------------------
def set_rotation_angle ( arg_ins_DataToBeHandedOver ) :
function_name = "set_rotation_angle"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
ins_ImageDataTwoDimensionHandling \
= BackYardProcess \
.set_rotation_angle ( arg_ins_DataToBeHandedOver )
DisplayImage \
.display_image ( ins_ImageDataTwoDimensionHandling )
print ( "==================================" )
print ( "Exit from Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
# ----------------------------------
def display_image ( arg_ins_DataToBeHandedOver ) :
function_name = "display_image"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
ins_ImageDataTwoDimensionHandling \
= BackYardProcess \
.make_image_data ( arg_ins_DataToBeHandedOver )
DisplayImage \
.display_image ( ins_ImageDataTwoDimensionHandling )
print ( "==================================" )
print ( "Exit from Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
#----------------------------------------
def write_image_to_OuterMedia ( ) :
function_name = "write_image_to_OuterMedia"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
BackYardProcess \
.write_image_to_OuterMedia ( )
print ( "==================================" )
print ( "Exit from Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
#----------------------------------------
def terminate_all_process ( ) :
function_name = "terminate_all_process"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
DataInputFormV2.func_destroy_window ( )
DisplayImage.func_destroy_window ( )
print ( "==================================" )
print ( "===== terminate_all_process , sys.exit ( ) =====" )
print ( "==================================" )
sys.exit ( )
----------
[断面画像を重ね合わせて、物体を3次元表示], Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり へ