জাল বুলিয়ান অপারেশন


15

প্রতিটি জাল জন্য শীর্ষে এবং ত্রিভুজ একটি সেট দেওয়া। অ্যালগরিদম, বা সন্ধান শুরু করার জায়গার কথা কি কেউ জানেন (আমি প্রথমে গুগল চেষ্টা করেছি তবে শুরু করার জন্য ভাল জায়গা খুঁজে পাইনি) বলা মেসের উপর বুলিয়ান ক্রিয়াকলাপ সম্পাদন করতে এবং ফলস্বরূপ জালের জন্য শীর্ষে এবং ত্রিভুজের একটি সেট পেতে? বিশেষ আগ্রহ হ'ল বিয়োগ এবং ইউনিয়ন।

উদাহরণ চিত্রসমূহ: http://www.rhino3d.com/4/help/Commands/Booleans.htm

উত্তর:


10

আমি এটিকে কনস্ট্রাকটিভ-সলিড-জ্যামিতি (সিএসজি) হিসাবে মনে করি। আশা করি আপনি এখানে কিছু সহায়তা পেতে পারেন।

http://www.alsprogrammingresource.com/csg.html

http://createuniverses.blogspot.com/2009/09/qtcsg-constructive-solid-geometry.html

http://www.nigels.com/research/

শুরু হিসাবে কনস্ট্রাকটিভ সলিড জ্যামিতির জন্য গুগল অনুসন্ধান করুন।

আছে HTH


+1 - আমি একই লিঙ্কগুলি পোস্ট করতে যাচ্ছিলাম, জাস্টবু - যতক্ষণ না আমি লক্ষ্য করেছি যে আপনি আমাকে এতে মারছেন! :)
জ্যাকোমে

ধন্যবাদ! পরিভাষাটি কনস্ট্রাকটিভ-সলিড-জ্যামিতি হ'ল আমার যা প্রয়োজন!
lathomas64

@ জ্যাকমো - বিড়ম্বনাটি আশ্চর্যজনক এবং এখন সম্পূর্ণ :-) আপনি কারও জন্য creditণ প্রাপ্য। ধন্যবাদ.
জাস্টবু

এর মধ্যে কিছু ? : পিআই বিশ্বাস করি আমি সেগুলি এখানে ফিরে পেয়েছি। : ডি তবুও, তারা কেবলমাত্র সিএসজি স্টাফ। এটি সেখান থেকে বেশ লোমশ হয়ে ওঠে - এমনকি বড় বাণিজ্যিক মডেলিং প্যাকেজগুলিও এটি সঠিক হয়নি।
জ্যাকোমে

3

আমি মনে করি আমরা যদি এটি সম্পর্কে কেবল চিন্তা করি তবে আমরা এটিকে ধাঁধা দিতে পারি।

আপনি স্পষ্টতই মুখগুলি (ত্রিভুজ) তৈরি করতে চান যেখানে দুটি জ্যামিতিগুলি ছেদ করে। তারপরে আপনার কাছে তিনটি মেস থাকবে: ছেদটি ছেদটি আপনি সবে বিচ্ছিন্ন করেছেন, জ্যামিতি 1 এবং জ্যামিতি 2।

তারপরে, আপনার যা প্রয়োজন তা কেবল মুছুন!

  • বুলিয়ান ডিফারেন্স: বিচ্ছিন্ন অংশ এবং জ্যামিতি 2 মুছুন।
  • বুলিয়ানআইন্টারেশন: বিচ্ছিন্ন অংশ রেখে জ্যামিতি 1 এবং 2 মুছুন
  • বুলিয়ান ইউনিয়ন: জ্যামিতিগুলি 1 এবং 2 একত্রিত করুন এবং বিচ্ছিন্ন অংশটি মুছুন (জ্যামিতি 1 এবং 2 একত্রে একটি শক্ত জ্যামিতিতে সেলাই নিশ্চিত করুন)
  • বুলিয়ানস্প্লিট: জ্যামিতি 1, জ্যামিতি 2 আলাদা করুন এবং বিচ্ছিন্ন অংশটিকে নকল করুন (একটি জ্যামিতি 1 এবং অন্যটি জ্যামিতির 2 এ সংযুক্ত করুন)

আমি মনে করি এটি কভার করে, তাই না? শক্ত অংশটি অবশ্যই ছেদগুলির মুখগুলি তৈরি করবে। তার জন্য, একের প্রতিটি মুখ দিয়ে পুনরাবৃত্তি করুন এবং দেখুন যে মুখটি অন্যটির অংশ কিনা; যদি এটি সম্পূর্ণরূপে ভিতরে থাকে, তবে ছেদটি জালটির অংশ হিসাবে মুখটি অনুলিপি করুন। যদি এটি আংশিকভাবে ভিতরে থাকে, তবে আপনাকে ছেদ লাইনের সাথে ত্রিভুজটি বিভক্ত করতে হবে; আমি মনে করি ডাইরেক্টএক্স এবং ওপেনজিএল উভয়ের পক্ষে এর জন্য সহায়ক ফাংশন থাকবে বা এটি কেবল কিছু 3 ডি প্লেন ম্যাথ (ভেক্টর)। আমি ক্যালকুলাস 3 এ এই জাতীয় জিনিসটি শিখেছি (বা এটি 2?) তবে আপনার যদি কোনও ক্লু না থাকে তবে সম্ভবত math.stackexchange.com এ জিজ্ঞাসা করুন । এবং তারপরে অবশ্যই যদি মুখটি বাইরে থাকে তবে কিছুই করবেন না। একবার আপনি উভয় জালের সমস্ত মুখের উপর পুনরাবৃত্তি করলে আপনাকে ছেদ জাল দিয়ে ছেড়ে দেওয়া হবে।


2

যদি আপনি বহুভুজীয় মডেলগুলি নিয়ে কাজ করে থাকেন তবে আপনাকে নন-ম্যানিফোল্ড জ্যামিতির সাথে ভালভাবে মোকাবিলা করতে হবে, যার অর্থ "অভ্যন্তরীণ" কী এবং "বাইরের" কী তা সংজ্ঞায়িত নয়। আপনার কাছে 0 বা 1 আছে কিনা তা আপনি যদি জানেন না তবে বুলিয়ান অপারেশন করা খুব কঠিন।

আপনাকে কো-প্ল্যানার বহুভুজ, বহুভুজ যা প্রান্তকে ছেদ করে, প্রান্তে এবং / অথবা মুখগুলিতে থাকে এমন শীর্ষগুলি এবং সেই প্রকৃতির জিনিসগুলির মতো সামঞ্জস্য ক্ষেত্রেও আপনাকে মোকাবেলা করতে হবে। এর মধ্যে কোনওটিই অসম্ভব, আপনার জাল ডেটা উপস্থাপনের জন্য আপনার খুব শক্তিশালী উপায় এবং এই ক্ষেত্রে আপনারা কী আশা করবেন তার একটি দৃ tight় সংজ্ঞা দরকার।


1

এটি লক্ষণীয় যে আপনার বেশিরভাগ অপারেশনগুলি উপেক্ষা এবং ইউনিয়ন দ্বারা প্রতিনিধিত্ব করা যেতে পারে, যেখানে কিছু জ্যামিতির অবহেলা কেবলমাত্র জ্যামিতির সাথে তার স্বাভাবিক অবস্থা উল্টে যায়। সুতরাং আপনি যদি ইউনিয়নটি সঠিকভাবে পেতে পারেন, তবে অন্যান্য ক্রিয়াকলাপগুলি কেবল অনুসরণ করা উচিত:

  • ছেদ (ক, খ): =! ইউনিয়ন (! এ, বি)
  • বিয়োগ (এ এবং বি): =! ইউনিয়ন (! ক, খ)

সানডারের কয়েকটি মোটামুটি ভাল ব্লগ পোস্ট রয়েছে যা সিএসজি বাস্তবায়নের বিষয়ে আলোচনা করে: http://sandervanrossen.blogspot.com/search/label/CSG


1
আমি আমার নিজস্ব সিএসজি স্টাফ উল্লেখ করতে যাচ্ছিলাম, তবে দৃশ্যত অন্য কেউ ইতিমধ্যে করেছেন: ও)
স্যান্ডার ভ্যান রোসেন

1

এটি একটি দুর্দান্ত কৌশল, কমপক্ষে যদি আপনি দৃust়তার সাথে এটি করতে চান (ভাসমান পয়েন্টটি কিছু গুরুতর অসুবিধার কারণ হয়)।

আমি আপনাকে এই বিষয়ে কম্পিউটেশনাল জ্যামিতি / কম্পিউটার গ্রাফিক্স সাহিত্যের দিকে নির্দেশ করব, বিশেষত এই সাম্প্রতিক কাগজগুলি:

http://homes.cs.washington.edu/~gilbo/repofiles/booleans2009.pdf

http://openflipper.org/uploads/media/campen_2010_eg_02.pdf

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.