دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۹
  • خرداد

جلسه ۰۷ : تبدیل SVG در D3.js

  • دسته‌بندی‌ها :
جلسه ۰۷ : تبدیل SVG در D3.js
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، این جلسه از آموزش های دوره D3.js را به مبحث تبدیل SVG در D3.js می پردازیم. SVG گزینه هایی برای تبدیل عنصر شکل SVG تک یا گروهی از عناصر SVG را فراهم می کند. تبدیل SVG از ترجمه، مقیاس، چرخش پشتیبانی می کند. اجازه دهید در این جلسه تبدیل یا transformation را بیاموزیم.

      تبدیل SVG در D3.js

      مقدمه ای بر تبدیل SVG در D3.js

      SVG یک ویژگی جدید را معرفی می کند، که آن ویژگی عبارت است از تبدیل برای حمایت از transformation می باشد. مقادیر ممکن یک یا بیشتر از موارد زیر هستند :

      Translate : دو گزینه را می گیرد، Tx ترجمه (translate)را در امتداد محور X بیان می کند و ty به ترجمه در امتداد محور Y اشاره می کند. برای مثال (translate(30 30.

      چرخش : سه گزینه را می گیرد، زاویه اشاره و زاویه چرخش و cx و cy که اشاره به مرکز چرخش در محور x و y است. اگر cx و cy مشخص نشوند، به صورت پیش فرض به منحنی فعلی سیستم مختصات پیش فرض می شود. برای مثال (rotate(60.

      مقیاس : دو گزینه را می گیرد، sx به فاکتور پیمایش در امتداد محور x اشاره می کند و sy به فاکتور پیمایش در امتداد محور y اشاره می کند. در اینجا، sy اختیاری است و در صورتی که مشخص نشده باشد مقدار sx را می گیرد. برای مثال : (scale(10

      (SkewX و Skew(SkewY : یک گزینه واحد را می گیرد؛ زاویه چرخش

      زاویه در محور x برای SkewX و زاویه در محور y برای SkewY اشاره دارد. برای مثال : (skewx (20

      یک مثال از مستطیل SVG توسط ترجمه(translate)، که به شرح زیر می باشد :

      مثال : 

      خروجی کد بالا به صورت زیر می باشد :تبدیل SVG در D3.jsبیش از یک تبدیل نیز برای یک عنصر SVG تنها با استفاده از فاصله به عنوان جدایی مشخص می شود. اگر بیش از یک مقدار مشخص شده باشد، تبدیل به صورت یک به یک به ترتیب در جهت مشخص می شود.

      مثال : 

      خروجی زیر بعد از اجرای کد بالا حاصل می شود :تبدیل SVG در D3.js

      تبدیل را می توان به عنصر گروه SVG نیز اعمال کرد. این ویژگی باعث می شود که گرافیک پیچیده تری در SVG تعریف شود مانند کد زیر :

      مثال : 

      کد بالا نتیجه زیر را تولید می کند.تبدیل SVG در D3.js

      یک نمونه کوچک

      برای ایجاد یک تصویر SVG، با تغییر مقیاس و چرخاندن آن از تبدیل (transformation)استفاده کنید. مراحل زیر را دنبال کنید.
      مرحله ۱ : ایجاد یک تصویر SVG و تنظیم عرض به اندازه ۳۰۰ پیکسل و ارتفاع به اندازه ۳۰۰ پیکسل.

      مثال : 

      مرحله ۲ : ایجاد یک گروه SVG

      مثال : 

      مرحله ۳ :یک مستطیل با طول ۶۰ و ارتفاع ۳۰ ایجاد کنید و آن را با رنگ سبز پر کنید.

      مثال : 

      مرحله ۴ : سپس یک دایره با شعاع ۳۰ ایجاد کنید و آن را با رنگ قرمز پر کنید.

      مثال : 

      مرحله ۵ : ویژگی تبدیل SVG در D3.js را اضافه کنید و همانطور که در زیر نشان داده شده است ترجمه را بچرخانید.

      مثال : 

      مرحله ۶ : ایجاد یک سند HTML

      “svg_transform_rotate_group.html” و SVG بالا را مانند توضیحات زیر کامل کنید.

      مثال : 

      نتیجه زیر از کد بالا حاصل می شود.تبدیل SVG در D3.js

      تبدیل با استفاده از D3.js

      برای ایجاد SVG با استفاده از D3.js، مراحل زیر را دنبال کنید.

      مرحله ۱ : ایجاد شمارنده برای نگه داشتن تصویر SVG که به شرح زیر می باشد.

      مثال : 

      مرحله ۲ : تصویر SVG را مطابق با توضیحات زیر بسازید.

      مثال : 

      مرحله ۳ : یک عنصر گروه SVG ایجاد کنید و مانند کدهای زیر تنظیمات ترجمه و چرخش را انجام دهید.

      مثال : 

      مرحله ۴ : ایجاد یک مستطیل SVG و اضافه کردن آن به داخل گروه.

      مثال : 

      مرحله ۵ : اکنون یک دایره SVG ایجاد کنید و آن را داخل گروه قرار دهید.

      مثال : 

      کد تکمیل شده به صورت زیر می باشد :

      مثال : 

      در نهایت کد بالا نتیجه زیر را تولید می کند.

      کتابخانه تبدیل

      D3.js یک کتابخانه جداگانه برای مدیریت تبدیل غیر دستی و ایجاد ویژگی های تبدیل فراهم می کند. این روش متد هایی را برای رسیدگی به همه انواع تغییرات فراهم می کند. بعضی از این متد ها عبارت اند از : ()transform()، translate ()، scale ()، rotate و… . شما می توانید با استفاده از اسکریپت زیر D3-transform را در صفحه وب خود اضافه نمایید.

      مثال : 

      در مثال بالا، کد تبدیل (transform) را می توان به صورت زیر نشان داد :

      مثال : 

      کلام آخر

      آموزش تبدیل SVG در D3.js با ویژگی های کاربردی به اتمام رسید.امیدوارم اط مطالب ذکر شده بهره کافی را برده باشید. با ما همراه باشید تا در جلسه بعدی انتقال در D3.js را فرا بگیرید.

      QR:  جلسه ۰۷ : تبدیل SVG در D3.js
      به اشتراک بگذارید