Python(パイソン) ,ソースプログラムリスト あり ,[指定された曲線を、指定された値で、近似的に等分割し、その結果を画面上に表示する] 処理の , [表示用・サブグループ]

Python(パイソン) ,ソースプログラムリスト あり ,プログラム作ってみた ,[指定された曲線を、指定された値で、近似的に等分割し、その結果を画面上に表示する] を 行う へ

-----

2024.8.17 presented in [note] ( //note.com/runningWater/ )
2024.8.24 rewritten

----------
1 はじめに

これ以降に記述されている内容は、このようなコンピューター・プログラムを制作した、というような事を、ただ、述べているに過ぎない。

以下の記述を読んだ人が、それを単に参考にする、というのであれば、問題は無いと、思われる。

しかし、記述されている内容に沿って、その人が、そこに記されているのと同様の制作や作業を行った際に、その制作、作業、コンピューターの作動の結果、使用されたコンピューター等、様々な方面において、何らかの問題が発生しない、という保証は、全くない。

その制作、作業、コンピューターの作動の結果、その人や、その人が所属している組織、その人が使用した様々な機器、インフラストラクチャー等の、身の上にどのような事が起ころうとも、私は一切、責任を負わない。

このプログラムは、Python(パイソン) 言語を使って、記述されている。

----------
2 表示用・サブグループ

他のモジュール群によって作成された、画像データを受け取り、それを、画面上に表示する、という機能を果たす、サブグループである。

このサブグループは、下記の1個のモジュールから構成される。

ファイル名 [DisplayImage.py]

このモジュールの中から、下記への呼び出しが行われる。

Python(パイソン) ,OpenCV2 ,ソースプログラムリスト あり ,プログラム作ってみた ,[画像処理, OpenCV2 使用] を 行う

ーーーーーーーーーー

import cv2
import ImageDataTwoDimensionHandling

MODULE_NAME = "DisplayImage"

def display_image ( arg_ins_ImageDataTwoDimensionHandling ) :

    function_name = "display_image"

    print ( "==================================" )
    print ( "Enter into Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "==================================" )

      #-------------------------------
    window_TopLeft_x = 305
    window_TopLeft_y = 1
    window_MaxSize = 800
      #-------------------------------

    width_of_ImageData = \
       arg_ins_ImageDataTwoDimensionHandling.get_width_of_ImageData ()
    height_of_ImageData = \
       arg_ins_ImageDataTwoDimensionHandling.get_height_of_ImageData ()

    print ( "==================================" )
    print ( "Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "passed phase_1" )
    print ( "width_of_ImageData = " + str ( width_of_ImageData ) )
    print ( "height_of_ImageData = " + str ( height_of_ImageData ) )
    print ( "==================================" )

    imageData_for_display =                          \
       arg_ins_ImageDataTwoDimensionHandling    \
           .get_loaded_image_data (
                             MODULE_NAME
                           , function_name
                               )

    print ( "==================================" )
    print ( "Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "passed phase_2" )
    print ( "==================================" )

            # if need , resize
    if ( width_of_ImageData > height_of_ImageData ) :
        if ( width_of_ImageData > window_MaxSize ) :
            resized_height = \
                round ( height_of_ImageData * ( window_MaxSize / width_of_ImageData )   \
                      )
            imageData_for_display = cv2.resize (   \
                           imageData_for_display   \
                         , dsize = ( window_MaxSize, resized_height )  \
                               )
    else:
        if ( height_of_ImageData > window_MaxSize ) :
            resized_width =  \
                round ( width_of_ImageData * ( window_MaxSize / height_of_ImageData ) )
            imageData_for_display = cv2.resize(   \
                           imageData_for_display  \
                         , dsize = ( resized_width, window_MaxSize )  \
                              )
            #display image
    cv2.imshow ( MODULE_NAME , imageData_for_display )
    cv2.moveWindow ( MODULE_NAME , window_TopLeft_x , window_TopLeft_y )

    print ( "==================================" )
    print ( "Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "passed phase_3" )
    print ( "==================================" )

            #wait pushing key
    # cv2.waitKey ( 0 )
            #if key is pushed, close display
    # cv2.destroyAllWindows ( )

    print ( "==================================" )
    print ( "Exit from Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "==================================" )

    #------------------------------------
def func_destroy_window ( ) :

    function_name = "func_destroy_window"

    print ( "==================================" )
    print ( "Enter into Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "==================================" )

    cv2.destroyAllWindows ( )

    print ( "==================================" )
    print ( "Exit from Module = " + MODULE_NAME
                      + " , function = " + function_name )
    print ( "==================================" )

----------

Python(パイソン) ,ソースプログラムリスト あり ,プログラム作ってみた ,[指定された曲線を、指定された値で、近似的に等分割し、その結果を画面上に表示する] を 行う へ

いいなと思ったら応援しよう!