色を数値として定量化する仕組みを解説する記事。単純な色名では緑の濃淡のような微妙な色の違いを表せないという問題から出発し、光子のスペクトルパワー分布、目の錐体・桿体細胞の感度曲線、非スペクトル色の合成、色覚異常のメカニズムまでを段階的に説明し、標準化された感度曲線を用いた色の定量的表現に至る過程を扱う。
ChromeでJPEG画像を小さく表示すると他ブラウザと見た目が異なることがある。原因はlibjpeg-turboが実装する「部分IDCTスケーリング」という最適化で、画像を完全展開せず8×8ブロックのDCT係数のうち低周波成分のみを使って粗くデコードし、その後通常のスケーリングを適用する。これによりメモリと処理時間を削減できる一方、高周波のディテールが失われ、アイコンのようなシャープな画像では太く見えるなど表示が劣化する。写真向けの最適化としては有効だが、アイコン用途にはJPEGではなくSVG等を使うべきと結論づけている。
SVGのxlink:hrefで色情報を継承するグラデーション定義において、AffinityのSVGパーサーはgradientUnits属性を正しく継承せずobjectBoundingBoxにフォールバックしてしまうため、userSpaceOnUse前提で作られたグラデーションがベタ塗りのように表示される不具合を検証した記事。W3C仕様上は参照元の未定義属性を子要素が継承すべきだが、Affinityはこれを満たしておらず、子要素にgradientUnitsを明示的に重複指定することで回避できると報告している。
発散定理を用いて三角形メッシュの体積をO(n)で高速計算する手法の解説。ベクトル場F=<x,0,0>を選び面積分に帰着させることで、三角形ごとの外積計算のみで体積を求める式(1/6ΣΔ1×Δ2の項)を導出し、数値積分や微分を必要としない軽量なアルゴリズムを示している。1トライアングルあたり11回の浮動小数点演算で済み、Raspberry Piでも毎フレーム3000万三角形程度を処理できると試算している。
SVGは2D自由度のメッシュグラデーションを標準サポートしないため、既存機能だけで近似する手法を検討した記事。クーンズパッチと双三次色補間の理論を整理し、形状はfeDisplacementMapで、色補間はSource over合成の凸結合性を利用したBernstein基底レイヤー方式でlinearGradient/マスクの重ね合わせにより再現する。さらにパッチ間の隙間対策・変位マップの精度向上・折り返し判定など実用化に向けた調整も行っている。
ベジエ曲線の対称タングルは実は曲率的に滑らかでないことを示し、代わりに曲率を直接指定する「曲率ハンドル」を提案する記事。二重放物線の交点として接線長を解く数式導出と、複数解が生じる場合の重み付け平均によるスナップ手法を解説し、既存の描画ツールに大きな変更なく組み込める設計を示している。
WebGPUを利用した実験的な宇宙探索アプリ「Galaxium」の紹介ページ。対応ブラウザ(最新のChrome、Edge、Safari、Firefox)やハードウェアグラフィックスが必要な旨が案内されており、未対応環境向けの代替として stellarium-web.org が紹介されている。