*Programs

Keys列挙体のメンバー名が分かりにくいから置換する

Keys Enum (System.Windows.Forms) | Microsoft Docs これでキーの名前が分かるんだけど、MacBookはOME〜なんちゃらっていうマイナーなキーボードにあたるらしくて、キーコードも特殊なので対応しなきゃいけない。 あと数字キーはD1じゃなくて1、Multiplyと…

C#で非同期ソケット通信

ブラウザでlocalhost:portを開いてチェック。 Programs.cs using System; using System.Collections.Generic; using System.Text; namespace Spider { class Program { static void Main(string[] args) { NetworkListener n = new NetworkListener(); n.beg…

深さ優先探索と幅優先探索

木構造のコレを元に探索コード書いてみた。 Tree#search 深さ優先探索。 user system total real depth-first search: 0.000000 0.000000 0.000000 ( 0.000058) 0.000000 0.000000 0.000000 ( 0.000033) Tree#search_b 幅優先探索。 Beadth first search: 0.…

木構造

こんな感じかな。 class Tree attr_reader :root, :childs, :data def initialize(data, root=nil) @root = root @data = data @childs = [] end def addNode(data) @childs << Tree.new(data,self) end def addNodes(ary_data) ary_data.each do |l| addNod…

線分交差判定

点ab,cdの座標を元に線分ABと線分CDの交差判定をする。 詳しい解説は‚à‚Á‚ÆŠÈ’P‚Ɂ|ü•ªŒð·”»’è|に書かれています。 方法 線分ABをline1、線分CDをline2とする。 ta=(line2_ax - line2_bx) * (line1_ay - line2_ay) + (line2_ay - line2_by) * (line2_ax -…

OpenGL 回転と隠面処理2

「OpenGL 回転と隠面処理 - Ruby - juntkの日記」をPythonで書き直しただけ。 Vimの置換コマンド便利だなあ。 ライブラリ PyOpenGL -- The Python OpenGL Binding 「Error (1002) creating CGSWindow」 classの中でglutCreateWindow()やらglutMainLoop()すべ…

OpenGL 回転と隠面処理 - Ruby

ライブラリ http://ruby-opengl.rubyforge.org/ 回転 回転したときにX,Y,Z軸がどうなるか確認したいので、XZ平面とYZ平面を用意した。キーボードの入力h,lでY軸を中心とした回転(横回転)、j,kでX軸を中心とした回転(縦回転)を行う。 軸を中心に回転...aa…