Re: Why are my 3D plots blue?
- To: mathgroup at smc.vnet.net
- Subject: [mg114414] Re: Why are my 3D plots blue?
- From: Joseph Gwinn <joegwinn at comcast.net>
- Date: Fri, 3 Dec 2010 05:23:34 -0500 (EST)
- References: <id7t2l$l4l$1@smc.vnet.net>
In article <id7t2l$l4l$1 at smc.vnet.net>, John Fultz <jfultz at wolfram.com> wrote: > On Wed, 1 Dec 2010 02:10:11 -0500 (EST), Joseph Gwinn wrote: > > In article <id2eko$d5t$1 at smc.vnet.net>, John Fultz <jfultz at wolfram.com> > > wrote: > > [snip] > > > >>>> The basic problem here is that the Graphics3D is being recreated over > >>>> and over again and Mathematica is getting confused about what exactly > >>>> should be selected. In typical examples, this kind of thing works > >>>> fine, but your code, for reasons I haven't investigated, stresses this > >>>> enough to expose the problem. By preventing the Graphics3D wrapper > >>>> from being recreated, you can avoid the problem entirely. > >>>> > >>> OK. Sounds like it will be faster too. > >>> > >> Yes, but probably only marginally so. > >> > > One thing I have been doing is to generate 3D plots in two pieces, with > > the unchanging background done once (with no Dynamic calls), the > > changing stuff generated in another Graphics3D, then using Show to merge > > things. The pattern is something like: > > > > staticplot==Graphics3d[<background scenery>]; (* No Dynamic stuff *) > > > > DynamicModule[{local vars}, > > dynamicplot==Graphics3D[Dynamic[<stuff that moves>]]; > > Show[staticplot,dynamicplot] ] > > > > Comments? It this complication worthwhile? > > Yes, this is good. Alternatively, you could have also done... > > Graphics3D[{<static stuff>, Dynamic[<dynamic stuff>]}] And simpler too. This is also consistent with the advice for avoiding blue-plot disease. > >>> Another perhaps related effect discovered by accident is that moving > >>> the 3D mouse while Mathematica is doing the initial evaluation of the > >>> notebook can cause Mathematica to crash with a SEGFAULT error. This > >>> happened a few days ago, and I allowed MacOS to send the crash report > >>> to Apple. > >>> > >> This might require further investigation of the specific notebook you're > >> working with. I suggest starting a dialog with technical support > >> about this. > >> > > OK. If I can reproduce the problem. I assume that Tech Support can > > access Mathematica crash logs sent to Apple. > > Not a safe assumption. I don't know as much about Apple's mechanism, but I know > that Microsoft prevents developers from being able to correlate crash reports > with specific users as a means of protecting privacy. I'll bet Apple does > something similar. I didn't think of this. Probably correct. I don't recall if I was given the option of also sending the log directly to the app developer. So, a local solution is likely needed. > > I bet the logs are under a rock somewhere on my machine somewhere as well. I knew there must be a way. A google yielded "crashreporterd" (for MacOS 10.4.x <intel>): <http://developer.apple.com/library/mac/#DOCUMENTATION/Darwin/Reference/M anPages/10.4-intel/man8/crashreporterd.8.html> I have not read the MacOS crashdump documentation, but I bet this captures the full memory image in a form suited to using a debugger to perform an autopsy. There may also be a crash logger, which captures less information. What is reported to Apple looks like the registers and stack of all the related threads, plus a bunch of environment data, at the moment of death. Thanks, Joe Gwinn