মেশ থেকে প্রতিটি ভার্টেক্সের জন্য একটি নর্মাল গণনা করে এবং এটিকে normalIdx থেকে শুরু হওয়া তিনটি
প্রপার্টি চ্যানেলে সংরক্ষণ করে।
ডিগ্রিতে minSharpAngle এর চেয়ে ধারালো এজগুলি প্রতি পাশে আলাদা নর্মাল রাখে এবং
তীক্ষ্ণ থাকে; 0 এ প্রতিটি ত্রিভুজ তার নিজস্ব নর্মাল রাখে। কয়েকটি ত্রিভুজের সমতল ফেস সমতল থাকে।
সলিড, প্রথম নর্মাল চ্যানেল এবং ডিগ্রিতে তীক্ষ্ণ কোণ
নর্মাল সংরক্ষিত সলিড
প্রতিটি ভার্টেক্সে সারফেস কতটা জোরালোভাবে বাঁকে তা গণনা করে এবং প্রপার্টি চ্যানেলে সংরক্ষণ করে:
gaussianIdx এ Gaussian বক্রতা, meanIdx এ গড় বক্রতা।
বক্রতা বাঁকার ব্যাসার্ধের বিপরীত, যেখানে সারফেস উত্তল সেখানে ধনাত্মক এবং যেখানে অবতল সেখানে ঋণাত্মক; 0 এর নিচের সূচক সেই চ্যানেল বাদ দেয়।
সলিড এবং যে দুটি চ্যানেলে সংরক্ষণ করতে হবে
বক্রতা সংরক্ষিত সলিড
একটি মসৃণ করা সলিডে ত্রিভুজ যোগ করে যতক্ষণ না তার মেশের প্রতিটি বিন্দু মসৃণ সারফেসের tolerance এর মধ্যে
থাকে, যাতে আঁটসাঁটভাবে বাঁকা অঞ্চলগুলি সমতলগুলির চেয়ে বেশি ত্রিভুজ পায়।
শুধু smoothOut বা smoothByNormals দিয়ে মসৃণ করা একটি সলিড বদলায়; অন্য যেকোনোটি
একটি কপি হিসেবে ফেরত আসে।
সলিড এবং মডেল এককে টলারেন্স
পরিমার্জিত সলিড
প্রতিটি এজকে মোটামুটি দেওয়া দৈর্ঘ্যের টুকরোয় ভাগ করে একটি সলিডে ত্রিভুজ যোগ করে, ত্রিভুজগুলি সমান রাখতে ভিতরের ভার্টেক্স যোগ করে।
smoothOut বা smoothByNormals দিয়ে মসৃণ করা একটি সলিডে নতুন ভার্টেক্সগুলি মসৃণ সারফেসে
সরে যায়; নাহলে সারফেস যেমন আছে তেমন থাকে।
সলিড এবং মডেল এককে লক্ষ্য এজের দৈর্ঘ্য
পরিমার্জিত সলিড
প্রতিটি এজকে number টুকরোয় ভাগ করে একটি সলিডে ত্রিভুজ যোগ করে; 2 হলে প্রতিটি ত্রিভুজ
চারটি হয়।
smoothOut বা smoothByNormals দিয়ে মসৃণ করা একটি সলিডে নতুন ভার্টেক্সগুলি মসৃণ সারফেসে
সরে যায়; নাহলে নতুন ত্রিভুজগুলি সমতল থাকে।
সলিড এবং প্রতিটি এজ কত টুকরোয় ভাগ করতে হবে
পরিমার্জিত সলিড
একটি সলিডকে তার ত্রিভুজ থেকে স্পর্শক বের করে মসৃণ করার জন্য চিহ্নিত করে, যাতে পরের একটি refine
বা refineToLength নতুন ত্রিভুজগুলিকে একটি মসৃণ সারফেসে বাঁকায়।
ডিগ্রিতে minSharpAngle এর চেয়ে ধারালো এজগুলি ধারালো থাকে; 0 এর উপরে minSmoothness সেগুলিকে
একটু গোল করে, এবং 1 সবকিছু মসৃণ করে। পরিশোধন না হওয়া পর্যন্ত জ্যামিতি নিজে
বদলায় না।
সলিড, ডিগ্রিতে তীক্ষ্ণ কোণ এবং তীক্ষ্ণ এজগুলির মসৃণতা
মসৃণকরণ ট্যানজেন্টসহ সলিড
একটি সলিডকে তার ভার্টেক্স প্রপার্টিতে সংরক্ষিত নর্মাল ব্যবহার করে মসৃণ করার জন্য চিহ্নিত করে, যাতে পরের একটি
refine বা refineToLength নতুন ত্রিভুজগুলিকে একটি মসৃণ সারফেসে বাঁকায়।
normalIdx তিনটি নর্মাল চ্যানেলের প্রথমটি, যেভাবে calculateNormals সেগুলি সংরক্ষণ করে;
একটি ভার্টেক্সে নর্মালগুলি অমিল হলে এজটি ধারালো থাকে।
সলিড এবং প্রথম নর্মাল চ্যানেল
মসৃণকরণ ট্যানজেন্টসহ সলিড
প্রতিটি সারফেস যেখানে ছিল তার tolerance এর মধ্যে রেখে একটি সলিডের মেশ থেকে ভার্টেক্স সরায়,
ত্রিভুজের সংখ্যা কমাতে।
ফলাফল মূল ভার্টেক্সগুলির একটি উপসেট রাখে; সলিডের নিজস্ব টলারেন্স মান অপরিবর্তিত থাকে।
সলিড এবং সারফেসগুলি কতদূর সরতে পারে, মডেল এককে
সরলীকৃত সলিড
একটি সলিডের ভার্টেক্স প্রপার্টিগুলি একটি ফাংশন দিয়ে নতুন করে লেখে যা প্রতিটি ভার্টেক্সের অবস্থান ও পুরনো প্রপার্টি পায় এবং নতুনগুলি পূরণ করে।
numProp এরপর প্রতিটি ভার্টেক্সের কতটি প্রপার্টি থাকে তা সেট করে, তাই চ্যানেল যোগ বা
বাদ দেওয়া যায়; পুরনো সংখ্যার ওপারে পড়া বা নতুনটির ওপারে লেখা অসংজ্ঞায়িত।
সলিড, নতুন প্রপার্টির সংখ্যা এবং যে ফাংশন প্রপার্টিগুলি পূরণ করে
নতুন প্রপার্টিসহ সলিড
একটি সলিডকে একটি নতুন টলারেন্স দেয়, যে গোল করার ত্রুটি এটি বহন করতে পারে, এবং টলারেন্স বাড়লে তার মেশ সরল করে।
টলারেন্সের চেয়ে সরু ত্রিভুজগুলিকে অবক্ষয়িত হিসেবে ধরা হয় এবং সরানো হয়।
সলিড এবং মডেল এককে টলারেন্স
নতুন টলারেন্সসহ সলিড
count টি অনন্য মেশ id এর একটি সারি সংরক্ষণ করে এবং প্রথমটি ফেরত দেয়, পরের অপারেশনের পরে আবার
খুঁজে পাওয়া যায় এমন ত্রিভুজের সেট চিহ্নিত করার জন্য।
তা থেকে একটি সলিড তৈরির আগে সেগুলি একটি মেশের runOriginalID এ নির্ধারণ করুন, উদাহরণস্বরূপ
কয়েকটি ম্যাটেরিয়াল আলাদা রাখতে।
কতগুলি আইডি সংরক্ষণ করতে হবে
সংরক্ষিত আইডিগুলির প্রথমটি; বাকিগুলি ক্রমানুসারে পরে আসে
একটি সলিডের একটি কপি তৈরি করে যা একটি নতুন মূল হিসেবে গণ্য হয়, যাতে কপিটি তার নিজস্ব ভার্টেক্স প্রপার্টি, যেমন একটি ভিন্ন UV ম্যাপিং, বহন করতে পারে এবং যা থেকে এটি তৈরি তা থেকে আলাদা করা যায়।
সমতলীয় ফেসগুলি একীভূত হয় এবং তাদের মধ্যের এজগুলি পথে গুটিয়ে যায়; সেই এজগুলি থাকতেই হলে বদলে মেশ রুটটি রাখুন।
সলিডটি
মূল হিসেবে চিহ্নিত কপি
কয়েকটি সলিডকে একটিতে প্যাক করে, decompose এর বিপরীত।
যে সলিডগুলি ওভারল্যাপ করে সেগুলি বুলিয়ান ইউনিয়নের মতোই ফিউজ হয়ে যায়; আলাদা রাখা সলিডগুলি একই ফলাফলের আলাদা অংশ হিসেবে থাকে।
যে সলিডগুলি একসাথে প্যাক করতে হবে
তাদের সবগুলি ধারণকারী একটি সলিড
একটি সলিডকে তার আলাদা, অসংযুক্ত টুকরোগুলিতে ভাগ করে, compose এর বিপরীত।
পুরোটা এক টুকরো এমন একটি সলিড একটি কপির তালিকা হিসেবে ফেরত আসে।
সলিডটি
পৃথক টুকরোগুলি
একটি সলিডকে দেওয়া Z উচ্চতায় XY প্লেনের সমান্তরাল একটি প্লেন দিয়ে কাটে এবং সমতল সেকশনটিকে একটি ক্রস-সেকশন হিসেবে ফেরত দেয়।
সলিডের বাউন্ডিং বক্সের তলায় একটি উচ্চতা তার তলার ফেসগুলি দেয়; উপরে একটি উচ্চতা একটি খালি ক্রস-সেকশন দেয়।
সলিড এবং কাটার Z উচ্চতা
ক্রস-সেকশন হিসেবে সেকশনটি
একটি সলিডকে XY প্লেনে সমতল করে এবং তার রূপরেখা একটি ক্রস-সেকশন হিসেবে ফেরত দেয়, যেমন ঠিক উপরের একটি আলোর নিচে তার ছায়া।
সলিডটি
ক্রস-সেকশন হিসেবে রূপরেখাটি
একটি সলিডকে তার উত্তল হালে মোড়ায়, এটিকে ধারণকারী খাঁজহীন সবচেয়ে ছোট আকৃতি, যেমন এর উপরে টানটান করে টানা শ্রিঙ্ক-র্যাপ।
সলিডটি
উত্তল হাল
বিন্দু, সলিড বা দুটির মিশ্রণকে একটি উত্তল হালে মোড়ায়, সেগুলিকে সব ধারণকারী খাঁজহীন সবচেয়ে ছোট আকৃতি।
যে বিন্দু ও সলিডগুলি মুড়তে হবে
উত্তল হাল
বুলিয়ানের বাইরে Manifold সলিড বদলানো: সেগুলিকে একটি উত্তল হালে মোড়ানো, ক্রস-সেকশনে স্লাইস ও প্রক্ষেপণ করা, তাদের মেশ পরিমার্জিত ও মসৃণ করা, সেগুলি সরলীকরণ করা, সাজানো ও ভাঙা, এবং ভার্টেক্স প্রপার্টি চ্যানেলে নর্মাল ও বক্রতা গণনা করা। একটি প্রপার্টি চ্যানেল হল মেশে সংরক্ষিত প্রতি ভার্টেক্সে একটি সংখ্যা, যেমন একটি নর্মালের তিনটি চ্যানেল। প্রতিটি মেথড একটি নতুন সলিড ফেরত দেয়।