এমন কোনও অ্যালগরিদম সম্পর্কে কি জানেন যা এই চিত্রটির মতো চিত্রের জন্য অনুমতি দেয়?


9

নির্দিষ্ট পয়েন্টগুলির সেট (3 ডি অ্যারে) দেওয়া হলে, কেউ কীভাবে চিত্রের মতো চিত্রটি তৈরি করতে সক্ষম একটি অ্যালগরিদম তৈরি করতে সক্ষম তা জানেন?

এখানে চিত্র বর্ণনা লিখুন


4
এটি একটি জিনিস, আপনি যা খুঁজছেন তা এই: ব্লগ.আান্ড্রেয়াস্কাহিলার.com
লূক সান আন্তোনিও

3
@ লুকসান অ্যান্টোনিও পোস্ট করুন যে উত্তর হিসাবে আমি এটি উত্সাহিত করতে পারি;) (তবে কেবল লিঙ্কটি নয়, উত্তরটির জন্য অ্যালগোরিদমের কিছু ন্যূনতম ব্যাখ্যা প্রয়োজন হবে)
ইয়ানিস

1
@ ইয়ানিসরিজস আমি চাইতাম, তবে এই ধরণের বিষয়ে আমার কোনও জ্ঞান বা অভিজ্ঞতা নেই, তাই আমি আপনাকে পর্যাপ্ত ব্যাখ্যা দিতে পারিনি (ভাল আমি পারছিলাম, তবে অন্যরা আরও ভাল কিছু করতে পারে) আমি লিঙ্কটি জানার একমাত্র কারণ ছিল কারণ আমি আকৃতির নামটি ব্লেন্ডারের কাছ থেকে জানতাম ( wiki.blender.org/index.php/Docferences.4/Manual/Modeling/Meshes/… )
লূক সান আন্তোনিও বিলেক্কি

3 ডি অবজেক্ট থেকে ছায়া তৈরি করা প্রতিদিন করা হয়, শেডো ম্যাপিং এবং শ্যাডো ভলিউম পরীক্ষা করে দেখুন , তবে আরও ছায়া তৈরির অ্যালগরিদম পাওয়া যায়
ratchet freak

এটি যে ছায়াটি আমি তৈরি করতে চাইছি তা নয় এটি শারীরিক অবজেক্ট। আমরা এটি 3D প্রিন্ট করতে যাচ্ছি।
ব্যবহারকারীর 88794

উত্তর:


5

যুদ্ধের পরে এখানে আসছেন, তবে যেহেতু এখনও কোনও গ্রহণযোগ্য উত্তর নেই এবং @ লুক তার প্রাপ্য প্রতিনিধিটি পেতে অস্বীকার করেছেন, তার দেওয়া লিঙ্কটির একটি দ্রুত সংক্ষিপ্তসার এখানে দেওয়া হল।

সুতরাং সম্পূর্ণ অ্যালগরিদম এখানে উপলব্ধ:

http://blog.andreaskahler.com/2009/06/creating-icosphere-mesh-in-code.html

ধারণাটি হ'ল আপনার জালটিকে একটি সাধারণ পদ্ধতি দিয়ে বুটস্ট্র্যাপ করুন যা আপনাকে 20 টি মুখ দিয়ে একটি গোলক দেয় এবং তারপরে আপনি সন্তুষ্ট না হওয়া পর্যন্ত এটি পরিমার্জন করবেন।

আকার বুটস্ট্র্যাপিং

আপনি একটি আইকোশেড্রন দিয়ে শুরু করুন । উইকিপিডিয়া নিবন্ধ যেমনটি বলেছে, আপনি তিনটি অভিন্ন এবং অর্থোথোনাল আয়তক্ষেত্র অঙ্কন করে শীর্ষটি অর্জন করতে পারেন। আপনার 4 টি কোণার সাথে 3 টি আয়তক্ষেত্র রয়েছে -> 12 টির শীর্ষে।

উইকিপিডিয়া চিত্র:

icosahedron

উদাহরণস্বরূপ, জেড প্ল্যান পয়েন্টগুলি হ'ল (ক, খ আয়তক্ষেত্র দৈর্ঘ্য):

  • (+ এ, + বি, ০)
  • (-এ, + বি, ০)
  • (+ এ, -বি, 0)
  • (-এ, -বি, 0)

এখন আপনাকে 20 টি মুখ খুঁজে পেতে হবে। এটি পাঠকের অনুশীলন হিসাবে ছেড়ে গেছে: পি

আকৃতি পরিমার্জন

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

for each iteration:
    # each iteration multiplies by 4 the number of faces
    for each edge at the current iteration:
        split the edge in two
        replace the middle point on the sphere

মধ্য বিন্দুটি সন্ধানের জন্য, আমরা ধরে নিই যে আমরা ইউনিট গোলকটি তৈরি করতে চাই (কেন্দ্র (0, 0, 0), ব্যাসার্ধ 1)।

middlePoint(p1, p2):
    middle = Point((p1.X + p2.X / 2), # same for y, z)
    radius = sqrt(middle.X^2, middle.Y^2, middle.Z^2)
    return Point(middle.X / radius,  # same for y, z)

প্রতিটি পুনরাবৃত্তিতে আমাদের মুখগুলি পুনর্গঠন করতে হতে পারে তবে এটি মোটামুটি সহজ। প্রতিটি মুখকে চার ভাগে ভাগ করা হয়েছে:

মুখ পরিমার্জন

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