[Date Index]
[Thread Index]
[Author Index]
Re: Why are my 3D plots blue?
*To*: mathgroup at smc.vnet.net
*Subject*: [mg114360] Re: Why are my 3D plots blue?
*From*: John Fultz <jfultz at wolfram.com>
*Date*: Thu, 2 Dec 2010 05:38:49 -0500 (EST)
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:
>
>> On Mon, 29 Nov 2010 06:07:39 -0500 (EST), Joseph Gwinn wrote:
>>> In article <ictfvj$mi6$1 at smc.vnet.net>, John Fultz
>>> <jfultz at wolfram.com>
>>> wrote:
>>>
>>>> If you can move the Dynamic inside of the Graphics3D[], you'll have
>>>> a
>>>> much
>>>> better experience. I.e., instead of...
>>>>
>>>> Dynamic[stuff; Graphics3D[{dirs}, opts]]
>>>>
>>>> do this...
>>>>
>>>> Graphics3D[Dynamic[stuff; {dirs}], opts]
>>>>
>>> I will try this.
>>>
>>> Will something like:
>>>
>>> DynamicModule[{local variables},
>>> Dynamic[stuff];
>>> Graphics3D[ Dynamic[graphic directives], opts]
>>> ]
>>>
>>> also work? I've tried some similar approaches, but the graphics didn't
>>> respond to mouse motion, don't know exactly why. I would have thought
>>> that a local variable x would be linked by the Dynamic functions. I
>>> assume I didn't quite do it right.
>>>
>> No, that won't work. To understand why, read through my post here...
>>
>> http://forums.wolfram.com/mathgroup/archive/2009/Feb/msg00424.html
>>
>> For a further library of stuff that I've written about Dynamic, see
>> here...
>>
>> http://forums.wolfram.com/mathgroup/archive/2010/May/msg00440.html
>>
> Thanks. I'll study these. I've read all the relevant documentation,
> and still don't really have a complete grasp of Dynamic and its friends.
>
>
>>>> and if the options should be dynamically updated, put individual
>>>> Dynamics in the option values.
>>>>
>>> Will this allow me to track the current value of for instance
>>> ViewMatrix? I have tried Dynamic[ViewMatrix] to no effect, getting an
>>> unchanging empty list {} in response.
>>>
>> Alas, there's a bug here. You're the first to uncover this, it appears.
>> I've made a report to the appropriate developers.
>>
> Ahh. Thanks. I would guess that you were already able to reproduce the
> problem, but here are some miscreants I tried:
>
> Graphics3D[{Text[Options[Dynamic[ViewMatrix]],{0,0,0}],Text[Options[Dynam
> ic[ViewPoint]],{0,0,1}]},ViewPoint->{Pi,Pi/2,2},SphericalRegion->True]
>
> Graphics3D[{Text[Dynamic[Options[ViewMatrix]],{0,0,0}],Text[Options[ViewP
> oint],{0,0,1}]},ViewPoint->{Pi,Pi/2,2},SphericalRegion->True]
>
> Dynamic[Graphics3D[{Text[Options[ViewMatrix],{0,0,0}],Text[Options[ViewPo
> int],{0,0,1}]},ViewPoint->{Pi,Pi/2,2},SphericalRegion->True]]
>
>
>>>> 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>]}]
>>> 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.
Sincerely,
John Fultz
jfultz at wolfram.com
User Interface Group
Wolfram Research, Inc.
> I bet the logs are under a
> rock somewhere on my machine somewhere as well.
>
> Regards,
>
> Joe Gwinn
Prev by Date:
**Re: Help to solve Integrate[Sqrt[t (1 - t) (z - t)], t]**
Next by Date:
**Re: How to short-circuit match failure?**
Previous by thread:
**Re: Why are my 3D plots blue?**
Next by thread:
**Re: Why are my 3D plots blue?**
| |