Python |セルピン絨毯

| | | | |

どのように機能しますか?
シェルピンスキーのカーペットは正方形で始まります。この正方形は9つの等しい部分に分割されます。最小の小さい正方形は、元の大きい正方形から削除されます。次に、残りの正方形が再び9つの等しい部分に分割され、各正方形の最も中央の正方形が削除されます。このプロセスを繰り返すと、美しいシェルピンスキーのカーペットのパターンが観察されます。

黒い四角から始めたとします。

9つの等しい部分に分割し、中央の正方形を削除します。

このプロセスを繰り返すとさらに進みます

このビデオ。

コードがどのように見えるか見てみましょう:


#必要なモジュールをインポートする

import numpy as np

from PIL import 画像


#プロセスの繰り返しの総数

合計 = 7


#画像サイズ

サイズ = 3 * * 合計


#画像を作成

square = np.empty([size、size、 3 ]、dtype = np.uint8)

color = np.array([ 255 255 255 ]、dtype = np。 uint8)


#これを黒で埋める

square.fill( 0

< br>

for i in range 0 、total + 1 ):

ステップダウン = 3 * * (合計 - i)

for x in range 0 3 * * i):

#中央の正方形をチェック

if x 3 = = 1

for y in range 0 3 * * i):

if y 3 = = 1

#色を変更する

square [y * stepdown:(y + 1 * ステップダウン、x * ステップダウン:(x + 1 * ステップダウン] = color


#結果の画像を保存します

save_file = "sierpinski.jpg"

Image.fromarray(square).save(save _file)


#コンソールに表示

i = 画像。 open "sierpinski.jpg"

i.show()

出力:

これは、7回繰り返した後のシェルピンスキーのカーペットです。他の言語のコードは、rosettacodeで入手できます。

>

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method