Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - MagWeb

Pages: [1] 2 3 ... 85
1
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 11:34:50 AM »
You're welcome.
Glad that we could solve it that easy

2
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 11:08:48 AM »
As Meshmixer's website structure was changed it may be that the updater doesn't find a new version.
Please download and install from here: http://meshmixer.com/download.html

3
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 11:00:33 AM »
I used the current version which is 3.4 (= 11.4.35). Your version was made 2014 (don't remember if it was 2.4 0r 2.5) .
Since that time boolean operations as used to create the holes was updated significantly.
Try to update MM (Note: The PRINT module was changed since)

Basically I didn't do anything but the default hollowing/hole creation.
And the .mix crash might happen loading a newer .mix to an older MM...

BTW: This explains why MM does not set the texture shader automatically.




4
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 10:42:18 AM »
Hmmm,

screenshot attached.

Also uploaded my result to:https://wetransfer.com/downloads/0ae9263a6e8bc40f768cf6c0d5161fde20180223153338/e7d25582688b1783e110f25ea074952520180223153338/18908a
(Along with the obj there's a .mix version included)

Which MM version on which OS?

5
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 10:19:40 AM »
Had to watch TV - Sorry Canada!
-------------------------------------------

Ok, your files load the texture fine without any problems. Also making it hollow while creating holes doesn't show the UV-issue you described above.

So I think the UV issue is related to the not loaded (?) texture.
Try this:
1. Maybe you've set MM to display geometry only? Set menu: Preferences > General tab > MeshColorMode to "VertexColor" or "GroupColor" ( NOT "ConstantColor")
2. to be death sure: drag one of the "World" SHADERS (texture shaders) onto the object.
3. Drag the "Checkerboard" SHADER onto the object: Does some checkerboard pattern appear on the object?

Also check whether your graphic card's driver is up to date.

6
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 06:27:45 AM »
Yep, best if you send me some link to the file.

7
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 05:43:34 AM »
If a OBJ ships with texture (means it needs an .mtl + image file (as .png or .jpg)) you do not need to "load" the texture separately (and you can't).
Simply import the .obj from within MM (not via some different way as e.g. OpenWith from your file browser) and the texture should show up automatically.

If there's no .mtl one may edit the .obj and write a .mtl manually....

8
Questions & Troubleshooting / Re: UVs problem after hollowing
« on: February 23, 2018, 05:09:43 AM »
This isn't a screenshot from within MM.
Does the app you imported your MM-result to support several texture images? MM creates an additional image for regions where it had to construct surfaces.

How does it look like in MM?

9
Hmm, sounds like some units issue... not sure.

Did you check ANALYSIS/UnitsDimensions if the imported file owns the expected size?

10
Any reason why you use a virtual machine to install MM where a native installer for macOS is available?

11
Wish List / Re: Transform - Lock to Viewport
« on: February 20, 2018, 04:24:53 AM »
Nice idea.
Basically it should be possible to write some mmapi script doing this... not tried it yet... let's see.

-----------

Just a hint aligning surfaces in MM:
There are basically two steps in a surface to surface alignment process: Rough and Fine registration.
 
Rough registration in most cases is done via corresponding points. So if you want to align object A to a target surface B define a pair of corresponding pivots (one on A, one on B).
With A being the active object run EDIT/Align. Set both Source and Destination to Pivot in the tool's options. LMB-click pivot on A and Shift+LMB-click on pivot B > Object A "jumps" to an near to B orientation. Flip the result's direction by clicking on the pale blue arrow in the widget. You may improve that solution manually using rotation. The final result needs to be roughly aligned only but the better the result is the faster will be the next step:

Fine registration: Set B as a target in the object browser (activate magnet icon). With A being active go to SELECT and roughly select the overlaps of A. Now in SELECT run EDIT/AlignToTarget.
Hit "ImproveSolution" several times until you'r satisfied with the result and accept. AlignToTarget only uses the selected areas on A and moves the non-selected surface along. So you have the opportunity to select areas of interest... which is a pretty cool and rare option in alignment softwares... 

12
Bug Reports / Re: MM 3.4 Crash on Mac OSX 10.10.5
« on: February 19, 2018, 04:04:51 PM »
See also:
http://meshmixerforum.com/index.php?topic=4831.msg10287#new

In case of MACOSX 10.10.5 the code signature of liblib3MF.dylib seems to invalid.

Please submit a bug report using this form:
http://download.autodesk.com/us/support/report_a_bug.html?SelProduct=Meshmixer

If there's a chance to upgrade your machine's OS: MM 3.4 works on my macOS 10.12.6 machines fine.

14
Tried to install 3.4 on a IMac (end 2013) still running 10.10.5:

Can't launch Meshmixer here as well.

Apple's crash report points to a invalid code signature of liblib3MF.dylib in meshmixer.app/contents/MacOS.

Same issue at your machine?

15
General Discussion / Re: Scene vs world position and ray casting
« on: February 16, 2018, 10:27:33 AM »
Here's an example of how to use a hitting ray to get measurements simply by calculating the distance of two 3D points:

Code: [Select]
#  Calculate distance between a ray's in- and out-hits
#  at a fixed direction (> ray_dir)
#  based on the surface normal

import mmapi
from mmRemote import *
import mm
from mm.mm_math import *
import math

# initialize connection
r = mmRemote()
r.connect()

# get object-space bounding box of selected object
(fMin,fMax) = mm.get_selected_bounding_box(r)

# construct a ray from far-away-pt through center of bbox
center = lerpv3(fMin, fMax, 0.5)
diag = subv3(fMax, fMin)
ray_dir = (1.0,0.0,0.0) # fixed direction (here e.g.: along x-axis)

# find hit "in" with "positive" ray direction:
ray_origin = subv3(center, mulv3s(ray_dir, 25.0*max(diag)))
(bHit, inFrame) = mm.find_ray_hit(r, ray_origin, ray_dir)
#print "in_hit: ", bHit, " world pos: ", mm.to_world(r, inFrame.origin), "world units" # uncomment to print output values
#mm.create_pivot(r, inFrame) # uncomment to visualize: drops a pivot at in-hit

# find hit "out" along ray with "negative" ray direction:
ray_origin = subv3(center, mulv3s(negv3(ray_dir), 25.0*max(diag)))
(cHit, outFrame) = mm.find_ray_hit(r, ray_origin, negv3(ray_dir))
#print "out_hit along ray: ", cHit, " out pos: ", mm.to_world(r, outFrame.origin), "world units" # uncomment to print output values
#mm.create_pivot(r, outFrame) # uncomment to visualize: drops a pivot at out along ray

# calculate distance between in and out hit along ray:
dist = math.sqrt((outFrame.origin[0] - inFrame.origin[0])**2 + (outFrame.origin[1] - inFrame.origin[1])**2 + (outFrame.origin[2] - inFrame.origin[2])**2)
print "distance along ray: ",  mm.to_world(r, dist), "world units"

# find hit "out" along in-hit's normal direction:
ray_dir = inFrame.z
ray_origin = subv3(inFrame.origin, mulv3s(ray_dir, 25.0*max(diag)))
(cHit, outFrame) = mm.find_ray_hit(r, ray_origin, ray_dir)
#print "out_hit along normal: ", cHit, " out pos: ", mm.to_world(r, outFrame.origin), "world units" # uncomment to print output values
#mm.create_pivot(r, outFrame) # uncomment to visualize: drops a pivot at out along in-hit's normal

# calculate distance between in and out hit along normal:
dist = math.sqrt((outFrame.origin[0] - inFrame.origin[0])**2 + (outFrame.origin[1] - inFrame.origin[1])**2 + (outFrame.origin[2] - inFrame.origin[2])**2)
print "distance along normal: ",  mm.to_world(r, dist), "world units"

#done!
r.shutdown()

The first result follows the ray while the second uses the in-hit's surface normal (see attached image)


Pages: [1] 2 3 ... 85