投稿

ラベル(gprof)が付いた投稿を表示しています

CIOが増殖中

イメージ
急速充電器が増えてきて面倒…  スマートフォン、ノートPCなど増えてきて、標準の充電器ってかさばるし、持ち運ぶのも邪魔。 そこで、電源タップ付きのものや、小形でMacbookProに充電できるものを探して購入。 気づいたら、CIO製品が増加していた。 持ち運び用 (1)  https://amzn.to/4d83MBV (2)  https://amzn.to/3P3B9xZ 自宅用 (3)  https://amzn.to/42WLezS どれも、それ程かさばらず、重宝しています。 電源タップが必要な場合は、(2)を持っていくけれど、ほとんどの場合は(1)のみでOK。 1ポートなら67W出力可能なので、全く問題なし。 2ポート以上使用しても、45W出力してくれるので、困ることはない。 (2) の場合は、延長ケーブルも持って歩くことが多いかなぁ。 1m程のケーブルが有ると、電源が取りにくい場所でも、なんとかなる。 という感じです。 ゼロハリのアタッシュケース自体が重いので、なるべく軽くするために(1)が常用です。 UGREENとかAnkerとかも良さそうなだけど、今の所CIOばかり増殖していますねぇ。

アルゴリズムって難しい

最小包含球に関して 教えている専門学校生は、ゲーム制作を主として勉強しているのだけれども、前回講義が終わってから質問があった。当たり判定を行う上で、キャラクターのポリゴンを包むエリアを球で表したいけれども、その最小の球の中心と半径を求めたいとな…。 ふむふむ、当然、そういうケースも起こりうるわなぁと。 「で、今はどんな方法を?」 「とりあえず、頂点の平均値から中心を求めているが、当然最小ではなくて、他の方法を探しています」 「平面であれば外接円を求めることになるよね?」 「それは分かりますが、空間で行う場合のアルゴリズムが分からないので…」 調べましたがな… 即答するのには、こちらも手持ちのネタがない。 「1週間待ってくれ。ヒントぐらいはあげられる筈だから…」(本当か?)と思いつつ、調査することに。 いろいろな方法が有るんだけれども、ゲームということは実行時間が短く、メモリをあまり食わない方法が最適。この条件で良さそうなものを探すことに。見つけたのが、 「 点の集合を包含する球 」という文献。 ここにも、様々な方法が紹介されているものの、最後のものが良さそう。 ということで、実際にコーディングして確かめることに。 条件は変なデータはないという前提でエラーチェックも最低限にして…。 #include <math.h> #include <stdio.h> #define INPUT_FILE "stars-s.txt" #define DATANUM 30 typedef struct { double x, y, z; /* coordinates */ } pos; int n=DATANUM; pos point[DATANUM]; pos center; double distance(pos p,pos pp) {     double rr;     return((pp.x-p.x)*(pp.x-p.x)+(pp.y-p.y)*(pp.y-p.y)+(pp.z-p.z)*(pp.z-p.z)); } double solve_by_movement(void) {     int k,i,t;...