Quartz

Quartz（クオーツ）は、Appleのオペレーティングシステム macOS の描画コアエンジン。前身であるNeXTのDPSに代わり、PDFベースの描画モデルを採用したもの。三次ベジェ曲線を描画プリミティブとするベクトル型システムで、QuickDrawとの互換性はない。なお、QuickDrawはCarbonアプリケーションの互換性のためmacOSにも残されている。

細かく言うと、アプリケーションで個々のバッファに描画を行うプリミティブはQuartz 2Dと呼び、それらを最終的にGPUのフレームバッファに合成する部分はQuartz Compositor（クオーツ・コンポジター）という。単にQuartzという場合は、大抵Quartz 2Dのことである。現在のQuartzの構造では、Quartz 2D、QuickDraw、OpenGL、QuickTimeの各出力が最終的にQuartz Compositorによって画面に描画される形になっている。

Quartzの機能は、Objective-CからはCocoa APIを通して、またC/C++言語からはCarbon APIを通して利用できる。またAppleはQuartzのスクリプト言語バインディングのひとつとしてPythonのバインディングを公式に用意している。

解像度非依存のベクトルベース・システム
浮動小数点による数学座標系
常時アンチエイリアシング
アルファチャンネルのサポート
オブジェクト指向のAPI
Unicodeに対応した多国語文字描画ルーチン (Apple Type Services for Unicode Imaging)

Mac OS X v10.2 (Jaguar) 以降では、環境に応じてGPUのジオメトリ演算ユニットを使って、 CPUの負荷を軽減するQuartz Extremeが実装された。これはQuartz Compositorのバッファ合成をGPU内部で行うシステムであり、これによりOpenGLとの混在描画も可能となった。

Mac OS X v10.4 (Tiger) ではGPUのプログラマブルシェーダを使って、描画演算をほぼ全てビデオチップ内で実行できるQuartz 2D Extreme（Mac OS X v10.5(Leopard)でQuartzGLに名称変更）が隠し機能として搭載されている（多くの不具合を抱えたまま実装されオフにされており、正式にはサポートされていない）。

脚注

関連項目 
Quartz Composer

（PDF）
ベジェ曲線
アフィン変換

グラフィックライブラリ
MacOS