アルちゃん
記事一覧
ストライプ生成マッスィーン
processingでできてます。
続編
使い方。
コピペ用コードcontrolP5はがんばって導入します。
import controlP5.*;ControlP5 cp;//BackgroundColor用Slider BackR;Slider BackG;Slider BackB;float default_stroke_weight = 1;color default_stroke
クイックセレクト (Quickselect)
C#include <stdio.h>void swap(int* a, int* b) { int temp = *a; *a = *b; *b = temp;}int partition(int arr[], int left, int right) { int pivot = arr[right]; int i = left - 1; for (int
深さ優先探索 (Depth-First Search, DFS) と 幅優先探索 (Breadth-First Search, BFS)
C#include <stdio.h>#include <stdlib.h>#define MAX 100// グラフの隣接リストのノードstruct Node { int vertex; struct Node* next;};// グラフstruct Graph { int numVertices; struct Node** adjLists; int* vi
ハッシュ探索(Hash Search)
ハッシュテーブルを用意し、
テーブル上のインデックスをハッシュ関数で作成する。
ハッシュ関数はデータを受け、インデックスを返す。
探索にかかる時間はハッシュ関数がハッシュ、すなわちテーブルのインデックスをつくるにかかる時間だけである。
ただしハッシュが衝突したらそこから線形サーチに移行したりする。
以下GPT4o
基本概念ハッシュ探索は、データの格納と検索を効率的に行うためのアルゴリズムとデー
二分探索(Binary Search)
C#include <stdio.h>int binarySearch(int arr[], int l, int r, int x) { while (l <= r) { int m = l + (r - l) / 2; if (arr[m] == x) { return m; } if (arr[m] < x
線形探索 (Linear Search)
forなりforeachなりして順番に要素を取り出し
IDなり名前なりを比較演算するやつ。
C#include <stdio.h>int linearSearch(int arr[], int n, int x) { for (int i = 0; i < n; i++) { if (arr[i] == x) { return i; }
ジオメトリノード(ver4.1)
まだ途中。
ノードの追加は追加ボタンかソケットのドラッグ。
パスの切断はCtrl+右ドラッグ
modeling->geometry nodes
ジオメトリノードは、Blender 2.92以降に導入された、手続き的にジオメトリを生成および変更するための新しいノードベースのシステムです。
モディファイアであって、元のモデルを変更しません。
各種定義Claude3による。ジオメトリノードに関し
ブレセンハムのアルゴリズム
ある理想の直線が存在するとして、それをピクセル単位に分割された、離散化されたディスプレイ空間に適切に、自然に割り当てるにはどうしたらよいか。
ブレセンハムのアルゴリズムが特筆すべきはすべてが整数演算であること。
描画したい直線が$${y=ax+b}$$であって、$${m=\frac{\Delta y}{\Delta x}}$$として除算を許容するならDDA(Digital differen
DDA(Digital Differential Analyzer)
線分を描画するためのアルゴリズム。
単純ではあるが除算が入ってしまう。ここから除算やfloat演算を取り除いたものがブレセンハム。
dxとdyを比較して、長い方でステップする。
例えばdxの方が長いなら、xを1ずつ増やしてステップする。
yは1以下であり、累積する。
つまりy座標はxに応じて1増えるかそのままかの2択である。
dxとdyを比較して、短い方でステップすると、この単純な2択が使えない。