[断面画像を重ね合わせて、物体を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(パイソン) 使って作ってみた ,ソースプログラムリスト あり へ


この記事が気に入ったらサポートをしてみませんか?