POV-Ray(1) Version 3.7 POV-Ray(1) نام (NAME) povray - موتور رهگیری پرتو پایداری دید (POV-Ray) خلاصه دستور (SYNOPSIS) povray [+Ooutput_file] [+/-option ...] [input_file] povray [+Iinput_file] [+Ooutput_file] [+/-option ...] [INI_file] توضیحات (DESCRIPTION) POV-Ray یک موتور رهگیری پرتو (ray tracer) آزاد و کامل است که توسط تیمی از داوطلبان در اینترنت توسعه یافته و نگهداری می‌شود. در پلتفرم یونیکس، POV-Ray می‌تواند همراه با پشتیبانی از قابلیت‌های پیش‌نمایش با استفاده از سامانه پنجره ایکس (X Window System) کامپایل شود. این صفحه راهنما صرفاً ویژگی‌های پایه و گزینه‌های خط فرمان مخصوص یونیکس در POV-Ray را برای این نسخه فهرست می‌کند. برای مشاهده توضیحات کامل درباره قابلیت‌های POV-Ray و زبان توصیف صحنه آن (معروف به POV-Ray SDL)، یا توضیحات بهتر درباره گزینه‌های خط فرمان و فایل‌های پیکربندی INI، لطفاً به مستنداتی که همراه تمام نسخه‌های POV-Ray عرضه می‌شود مراجعه فرمایید. این مستندات در مسیر PREFIX/share/doc/povray-3.7 نصب شده‌اند؛ که در آن PREFIX به صورت پیش‌فرض /usr/local است یا مسیری است که هنگام پیکربندی بسته منبع جهت کامپایل و نصب تعیین شده است. برخی از ویژگی‌های مختص یونیکس عبارتند از: پشتیبانی از نمایش در سامانه پنجره ایکس به طور خودکار از بهترین رده بصری (visual class) و عمیق‌ترین عمق رنگ موجود استفاده می‌کند. برای حالت‌های بصری که از رنگ ۲۴ بیتی در هر پیکسل پشتیبانی نمی‌کنند، از ترام‌دهی پخش خطای فلوید-اشتاینبرگ (Floyd-Steinberg dithering) همراه با یک پالت بهینه‌شده و تخصیص‌یافته به صورت پویا استفاده می‌شود تا بهترین نمایش ممکن با حالت بصری، عمق و نگاشت رنگ کنونی حاصل شود. سازگاری با استاندارد ICCCM در نسخه X Window به این معنی است که پنجره پیش‌نمایش همانند برنامه‌های استاندارد سامانه پنجره ایکس رفتار می‌کند، به درستی با مدیر پنجره ارتباط برقرار می‌سازد و گزینه‌های خط فرمان استاندارد را می‌پذیرد. برای اطلاعات بیشتر صفحه راهنمای X(1) را ببینید. گرافیک اسکی (ASCII) در نسخه متنی، امکان مشاهده نمای ساده‌ای از رندر جاری را در پایانه‌های متنی فراهم می‌کند. یک مدیریت‌کننده وقفه (interrupt handler) امکان متوقف کردن ایمن رندر را فراهم می‌سازد، به طوری که تمام داده‌هایی که تا آن لحظه روی دیسک نوشته نشده‌اند قبل از خروج ذخیره شوند. کلید ترکیبی Control-C یا سیگنال SIGINT باعث لغو فرآیند توسط کاربر شده و رندر کنونی را پیش از خروج ذخیره می‌کند. برای اطلاعات بیشتر kill(1) را ببینید. رندر مستقل از پلتفرم و معماری بدین معناست که یک صحنه مشخص، بر روی تمام رایانه‌ها و سیستم‌عامل‌ها به یک شکل رندر می‌شود (البته به استثنای سرعت رندر). گزینه‌ها (OPTIONS) گزینه‌ها می‌توانند با پیشوند '+' یا '-' مشخص شوند. بسیاری از گزینه‌ها سوییچ هستند، به این معنی که '+' گزینه را فعال کرده و '-' آن را غیرفعال می‌سازد. برای سایر گزینه‌ها تفاوتی ندارد که از '+' یا '-' استفاده شود. در بیشتر گزینه‌ها نباید فاصله وجود داشته باشد، بنابراین باید به عنوان مثال به جای +F N از +FN استفاده کنید؛ همچنین ترکیب گزینه‌ها مجاز نیست، در نتیجه +SC با +S +C تفاوت بسیاری دارد. گزینه‌ها به بزرگ و کوچک بودن حروف حساس نیستند. گزینه‌های خط فرمان در ادامه به همراه گزینه‌های فایل INI متناظر آنها نمایش داده شده‌اند. اگر یک گزینه چندین بار در فایل‌های INI یا خط فرمان مشخص شود، آخرین مورد جایگزین موارد قبلی خواهد شد؛ به استثنای گزینه +L یا Library_Path که اثر تجمیعی دارد. گزینه‌های تجزیه (Parsing options): I یا Input_File_Name=file فایل ورودی مورد استفاده را مشخص می‌کند. اگر نام فایل ورودی '-' باشد، توصیف صحنه از ورودی استاندارد خوانده خواهد شد. HI یا Include_Header=file فایلی را به عنوان اولین فایل ضمیمه (include) یک فایل صحنه تعیین می‌کند. این گزینه می‌تواند برای ضمیمه کردن همیشگی مجموعه‌ای از فایل‌های پیش‌فرض مورد استفاده در تمام صحنه‌ها به کار رود. L یا Library_Path=path مسیر پوشه‌ای را برای جستجوی فایل‌های ورودی، فایل‌های include، قلم‌ها و نگاشت‌های تصویری تعیین می‌کند، در صورتی که فایل مشخص‌شده در پوشه جاری نباشد. این گزینه می‌تواند چندین بار برای افزایش تعداد پوشه‌های جستجو مشخص شود. MVn.n یا Version=float با فایل‌های صحنه به‌گونه‌ای رفتار می‌کند که گویی متعلق به نسخه n.n هستند، نه نسخه جاری. این تنظیم می‌تواند از داخل خود فایل صحنه لغو و بازنویسی شود. SU یا Split_Unions=bool اتحادهای کران‌دار CSG را در صورتی که فرزندان متناهی باشند تفکیک می‌کند. این کار امکان اعمال کران‌بندی خودکار اشیای CSG را فراهم می‌سازد. UR یا Remove_Bounds=bool اشیای کران‌بندی غیرضروری را حذف می‌کند. این کار اجازه می‌دهد کران‌بندی خودکار روی فایل‌های صحنه قدیمی‌تر صورت گیرد. BM1 یا Bounding_Method=1 فعال‌سازی کران‌بندی سلسله‌مراتب حجم کران‌دار یا BVH (Bounding Volume Hierarchy) (حالت پیش‌فرض). BM2 یا Bounding_Method=2 فعال‌سازی کران‌بندی درخت افراز فضای دودویی یا BSP (Binary Space Partitioning). گزینه‌های خروجی (Output options): Hn یا Height=integer ارتفاع تصویر خروجی باید n پیکسل باشد. Wn یا Width=integer عرض تصویر خروجی باید n پیکسل باشد. SRn یا Start_Row=integer شروع رندر از سطر n از بالای صفحه. SR0.n یا Start_Row=float شروع رندر از n درصد از بالای صفحه. ERn یا End_Row=integer پایان رندر در سطر n از بالای صفحه. ER0.n یا End_Row=float پایان رندر در n درصد از بالای صفحه. SCn یا Start_Column=integer شروع رندر از ستون n از سمت چپ صفحه. SC0.n یا Start_Column=float شروع رندر از n درصد از سمت چپ صفحه. ECn یا Start_Column=integer پایان رندر در ستون n از سمت چپ صفحه. EC0.n یا Start_Column=float پایان رندر در n درصد از سمت چپ صفحه. C یا Continue_Trace=bool ادامه دادن یک فرآیند رهگیری پرتو که قبلاً متوقف شده است. P یا Pause_When_Done=bool در صورت فعال بودن پیش‌نمایش، پس از اتمام رندر و پیش از بستن پنجره مکث می‌کند. V یا Verbose=bool چاپ پیام‌های وضعیت با جزئیات کامل درباره پیشرفت رندر. WLn یا Warning_Level=integer تنظیم سطح هشدارها روی n. X یا Test_Abort=bool فعال‌سازی کلیدهای 'q' و 'Q' جهت متوقف کردن رندر در حال اجرا. Xn یا Test_Abort_Count=integer بررسی درخواست لغو توسط کاربر صرفاً به ازای هر n پیکسل. گزینه‌های خروجی - مربوط به نمایش (Display-related output options): D[0][GHT] یا Display=bool Palette=char نمایش رندر در حال انجام، با امکان تعیین اختیاری پالت رنگ. تنها گزینه معتبر پالت در X Window مقدار G است که پیش‌نمایش را به صورت طیف خاکستری (grayscale) اجباری می‌کند. پالت X Window بر اساس رده بصری مورد استفاده تعیین می‌شود، چه به طور خودکار توسط POV-Ray انتخاب شده باشد و چه از طریق گزینه -visual. جهت مشخص کردن پالت، باید ابتدا نوع نمایشگر (کاراکتر دوم که در اینجا با '0' نشان داده شده) به دلایل سازگاری قید شود، هرچند این مقدار در نسخه‌های یونیکس نادیده گرفته می‌شود. SPn یا Preview_Start_Size=integer شروع پیش‌نمایش موزاییکی با بلوک‌های مربعی به ابعاد n پیکسل. EPn یا Preview_End_Size=integer پایان پیش‌نمایش موزاییکی با بلوک‌های مربعی به ابعاد n پیکسل. UD یا Draw_Vistas=bool رسم مستطیل‌های ویستا پیش از رندر منسوخ شده است. گزینه‌های خروجی - مربوط به فایل (File-related output options): F[CEHJNPST][n] یا Output_to_File=bool Output_File_Type=char ذخیره تصویر رندرشده در یکی از قالب‌های موجود، شامل C (فشرده TGA)، E (قالب OpenEXR)، H (دامنه دینامیکی بالا Radiance HDR)، J (قالب JPEG)، N (قالب PNG)، P (قالب PPM)، S (مخصوص سیستم - PNG) و T (قالب TGA). O یا Output_File_Name=file نوشتن خروجی در فایلی به نام output_file، یا خروجی استاندارد در صورتی که '-' به عنوان نام فایل خروجی داده شده باشد. MIn یا Max_Image_Buffer_Memory=n تنظیم حداکثر اندازه مجاز حافظه موقت (کش) تصویر خروجی به مگابایت. گزینه‌های رهگیری پرتو (Tracing options): MBn یا Bounding=bool Bounding_Threshold=integer استفاده از اسلب‌های کران‌بندی خودکار در صورتی که بیش از n شیء در صحنه وجود داشته باشد. Qn یا Quality=integer رندر با کیفیت n. محدوده کیفیت از 0 برای تصاویر تقریبی و اولیه تا 9 برای رهگیری کامل پرتو و بافت‌هاست؛ مقادیر 10 و 11 روشنایی رادیوسیتی (radiosity) را نیز اضافه می‌کنند. A0.n یا Antialias=bool Antialias_Threshold=integer اعمال هموارسازی لبه‌ها (antialiasing) روی پیکسل‌ها تا زمانی که اختلاف میان پیکسل‌های مجاور کمتر از 0.n شود یا حداکثر عمق بازگشت فرا برسد. AMn یا Sampling_Method=integer تعیین روش هموارسازی لبه‌های مورد استفاده: غیرانطباقی (n = 1) یا انطباقی (n = 2). Jn.n یا Jitter=bool Jitter_Amount=float تعیین حداکثر شعاع، بر حسب پیکسل، که نمونه‌های هموارسازی‌شده می‌توانند از مراکز واقعی خود دچار لغزش (jitter) شوند. Rn یا Antialias_Depth=integer تنظیم حداکثر عمق بازگشت برای زیرنمونه‌برداری پیکسل‌های هموارسازی‌شده. UA یا Output_Alpha=bool استفاده از کانال آلفا برای ماسک شفافیت. UL یا Light_Buffer=bool استفاده از بافر نور برای افزایش سرعت رندر منسوخ شده است. UV یا Vista_Buffer=bool استفاده از بافر ویستا برای افزایش سرعت رندر منسوخ شده است. گزینه‌های پویانمایی (Animation options): Kn.n یا Clock=float رندر یک تک‌فریم از پویانمایی با مقدار زمان/کلاک n.n. KFIn یا Initial_Frame=integer تعیین شماره فریم ابتدایی برای یک پویانمایی. KFFn یا Final_Frame=integer تعیین شماره فریم پایانی برای یک پویانمایی. این مقدار باید عددی غیر از ۱ باشد تا بتوان چندین فریم را به طور همزمان رندر کرد. KIn.n یا Initial_Clock=float تعیین مقدار کلاک برای فریم ابتدایی یک پویانمایی. KFn.n یا Final_Clock=float تعیین مقدار کلاک برای فریم نهایی یک پویانمایی. SFn یا Subset_Start_Frame=integer رندر زیرمجموعه‌ای از فریم‌های یک پویانمایی، با شروع از فریم n. SF0.n یا Subset_Start_Frame=float رندر زیرمجموعه‌ای از فریم‌های یک پویانمایی، با شروع از n درصد ابتدایی پویانمایی. EFn یا Subset_End_Frame=integer رندر زیرمجموعه‌ای از فریم‌های یک پویانمایی، با توقف در فریم n. EF0.n یا Subset_End_Frame=float رندر زیرمجموعه‌ای از فریم‌های یک پویانمایی، با توقف در n درصد ابتدایی پویانمایی. KC یا Cyclic_Animation=bool تولید مقادیر کلاک برای یک پویانمایی چرخه‌ای (تکرارشونده). UF یا Field_Render=bool رندر فریم‌های متناوب با استفاده از میدان‌های فرد/زوج، مناسب برای خروجی‌های درهم‌بافته (interlaced). UO یا Odd_Field=bool شروع پویانمایی رندرشده به صورت میدان با میدان فرد، به جای میدان زوج. گزینه‌های تغییر مسیر خروجی (Redirecting options): GI یا Create_Ini=bool یا Create_Ini=file نوشتن تمام پارامترهای INI در فایلی همنام با فایل صحنه ورودی، یا فایلی با نام مشخص‌شده. G[ADFRSW] یا _File=bool یا _File=file نوشتن جریان خروجی در کنسول و/یا فایل مشخص‌شده. جریان‌ها عبارتند از: All_File (تمام پیام‌ها به جز وضعیت)، Debug_File (اشکال‌زدایی)، Fatal_File (خطاهای مهلک)، Render_File (رندر)، Statistics_File (آمار) و Warning_File (هشدارها). گزینه‌های سامانه پنجره ایکس (X Window System options): علاوه بر گزینه‌های استاندارد خط فرمان، POV-Ray سوییچ‌های خط فرمان اضافی مربوط به سامانه پنجره ایکس را نیز تشخیص می‌دهد. برای شرح کامل این گزینه‌ها X(1) را ببینید. -display نمایش پیش‌نمایش در display_name به جای نمایشگر پیش‌فرض. این گزینه برای تغییر نمایشگر به یک میزبان راه‌دور به کار می‌رود. گزینه معمول نمایش +d همچنان معتبر است. -geometry [WIDTHxHEIGHT][+XOFF+YOFF] رندر تصویر با ابعاد WIDTH (عرض) و HEIGHT (ارتفاع)، و قرار دادن پنجره در فاصله XOFF از لبه چپ و YOFF از لبه بالای صفحه (یا در صورت منفی بودن به ترتیب از لبه‌های راست و پایین). مقادیر WIDTH و HEIGHT در صورت ارائه، تنظیمات قبلی Wn و Hn را لغو و جایگزین می‌کنند. -help نمایش گزینه‌های مختص سامانه پنجره ایکس. برای نمایش گزینه‌های عمومی POV-Ray از گزینه -H به تنهایی در خط فرمان استفاده کنید. -icon شروع پنجره پیش‌نمایش به صورت آیکون (کمینه‌شده). -title تغییر عنوان پیش‌فرض پنجره پیش‌نمایش به window_title. -visual استفاده از عمیق‌ترین رده بصری موجود از نوع visual_type به جای رده بصری انتخاب‌شده خودکار. انواع بصری معتبر عبارتند از StaticGray، GrayScale، StaticColor، PseudoColor، TrueColor یا DirectColor. منابع (RESOURCES) در حال حاضر هیچ منبع X یا فایل‌های app-default برای گزینه‌های X Window پشتیبانی نمی‌شوند. فایل‌ها (FILES) POV-Ray برای یونیکس امکان استفاده از یک فایل povray.ini در پوشه جاری را فراهم می‌کند تا تنظیمات فردی موجود در $HOME/.povray/3.7/povray.ini را لغو کرده و تغییر دهد. POV-Ray به دنبال اطلاعات پیکربندی اولیه، مانند تنظیمات Library_Path که مسیر فایل‌های include استاندارد را مشخص می‌کند، ابتدا در متغیر محیطی $POVINI، سپس در ./povray.ini، سپس در $HOME/.povray/3.7/povray.ini و در نهایت در PREFIX/etc/povray/3.7/povray.ini می‌گردد. پوشه PREFIX را می‌توان در زمان کامپایل با استفاده از گزینه --prefix اسکریپت configure تغییر داد. جهت سازگاری رو به عقب با نسخه 3.5 و نسخه‌های پیشین POV-Ray، فایل‌های $HOME/.povrayrc و $PREFIX/etc/povray.ini نیز در صورتی که هیچ‌یک از فایل‌های فوق یافت نشوند، جستجو می‌شوند. از نسخه 3.5 به بعد، POV-Ray دارای سازوکار محدودیت ورودی/خروجی (I/O Restriction) است. محدودیت‌های I/O تلاش می‌کنند تا دستگاه اجراکننده POV- Ray را دست‌کم تا حدی در برابر خواندن یا نوشتن فایل‌ها در خارج از مجموعه‌ای از پوشه‌های مشخص محافظت کنند. این تنظیمات در دو فایل پیکربندی تعریف می‌شوند: یک فایل در سطح سیستم به نشانی PREFIX/etc/povray/3.7/povray.conf و یک فایل در سطح کاربر به نشانی $HOME/.povray/3.7/povray.conf با تنظیمات محدودکننده‌تر. از نسخه POV-Ray 3.6 قالب این فایل‌های پیکربندی تغییر کرده و هیچ سازگاری رو به عقبی با فایل‌های پیکربندی در POV-Ray 3.5 حفظ نشده است. برای جزئیات بیشتر و مثال‌هایی از تنظیمات محدودیت ورودی/خروجی به مستندات برنامه مراجعه کنید. فایل povlegal.doc باید همراه تمامی نسخه‌های نصب‌شده POV-Ray موجود باشد و شرایط و محدودیت‌های خاص نرم‌افزار POV-Ray را مشخص می‌کند. یکی از شروط povlegal.doc این است که مستندات، فایل‌های INI و صحنه‌ها باید برای تمامی کاربران POV-Ray در دسترس باشند. فایل‌های صحنه و INI معمولاً در مسیر PREFIX/share/povray-3.7 و مستندات در PREFIX/share/doc/povray-3.7 نصب می‌شوند، اما در برخی سیستم‌ها ممکن است در مکان‌های دیگری قرار داشته باشند. تازه‌ترین نسخه POV-Ray و مستندات آن را همیشه می‌توان از طریق FTP ناشناس در ftp.povray.org یا از طریق HTTP در povray.org و نیز بسیاری از مکان‌های دیگر دریافت کرد. همچنین ببینید (SEE ALSO) X(1), kill(1), The POV-Ray Manual حق نشر (COPYRIGHT) Persistence of Vision Ray Tracer (POV-Ray) Copyright 1991-2013 Persistence of Vision Raytracer Pty. Ltd. برای کسب اطلاعات بیشتر به فایل povlegal.doc که همراه این برنامه ارائه می‌شود مراجعه فرمایید. X Window System شامل حق نشر زیر است: Copyright 1984 - 1991 the Massachusetts Institute of Technology Copyright 1992 - 1996 the X Consortium, Inc. Copyright 1998 the Open Group, L.L.C. Copyright 1999 - 2004 the X.Org Foundation, L.L.C. علائم تجاری (TRADEMARKS) عبارت‌های Persistence of Vision Raytracer و POV-Ray علائم تجاری شرکت Persistence of Vision Raytracer Pty. Ltd هستند. UNIX یک علامت تجاری ثبت‌شده متعلق به The Open Group در ایالات متحده و سایر کشورها است. اشکالات (BUGS) پیش از گزارش اشکال به سامانه پیگیری باگ ما در bugs.povray.org، باید مطمئن شوید که آخرین نسخه نرم‌افزار را در اختیار دارید، زیرا ممکن است باگ مورد نظر پیش‌تر برطرف شده باشد. تعداد زیادی از کاربران POV-Ray در سرور خبری POV-Ray به نشانی news.povray.org حضور دارند و فهرستی از گروه‌های موجود را می‌توان در povray.org/resources/newsgroups یافت. پیشنهاد می‌شود پیش از ثبت گزارش اشکال، در آنجا به دنبال راهنمایی و کمک باشید. نویسندگان (AUTHORS) معماران/توسعه‌دهندگان اصلی POV-Ray 3.7 (به ترتیب الفبا): Chris Cason Thorsten Froehlich Christoph Lipka همراه با کمک از سوی (به ترتیب الفبا): Ton van den Broek Nicolas Calimet Jerome Grimbert James Holsenback Christoph Hormann Nathan Kopp Juha Nieminen مشارکت‌کنندگان پیشین (به ترتیب الفبا): Steve Anger Eric Barish Dieter Bayer David K. Buck Nicolas Calimet Chris Cason Aaron A. Collins Chris Dailey Steve Demlow Andreas Dilger Alexander Enzmann Dan Farmer Thorsten Froehlich Mark Gordon James Holsenback Christoph Hormann Mike Hough Chris Huff Kari Kivisalo Nathan Kopp Lutz Kretzschmar Christoph Lipka Jochen Lippert Pascal Massimino Jim McElhiney Douglas Muir Juha Nieminen Ron Parker Bill Pulver Eduard Schwan Wlodzimierz Skiba Robert Skinner Yvo Smellenbergh Zsolt Szalavari Scott Taylor Massimo Valentini Timothy Wegner Drew Wells Chris Young سایر مشارکت‌کنندگان در مستندات ذکر شده‌اند. قدردانی (ACKNOWLEDGEMENT) POV-Ray بر پایه DKBTrace 2.12 اثر David K. Buck و Aaron A. Collins توسعه یافته است. POV-Team July 2021 POV-Ray(1)