sketchucation logo sketchucation
    • Login
    1. Home
    2. AdamB
    3. Posts
    ๐Ÿ›ฃ๏ธ Road Profile Builder | Generate roads, curbs and pavements easily Download
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 129
    • Posts 933
    • Groups 2

    Posts

    Recent Best Controversial
    • RE: This tripped me up (again) today

      FWIW This whole area of Comp Sci is pretty tricky to resolve in programming languages generally because ultimately these references are not 'semantic free'.
      Sometimes you want a 'deep' copy and sometimes you want a 'shallow' copy. The classic example is if you have a class Car which has an attribute which is a reference to the car manufacturer, when I copy the car, I generally wouldn't want to deep copy the entire Ford motor company (or whatever).

      So languages essentially cannot a priori "know" what the meaning and therefore the intent of these references are, hence we have to either manually descend a parts hierarchy choosing to copy or not copy, or keep a top-level reference.

      Adam

      posted in Developers' Forum
      AdamBA
      AdamB
    • Animated flames

      New vid using Texture Animation to add animated flames in LightUp
      [flash=640,424:yf0p8et4]http://vimeo.com/moogaloop.swf?clip_id=13956398[/flash:yf0p8et4]

      posted in Extensions & Applications Discussions extensions
      AdamBA
      AdamB
    • [Plugin] Scene Tweaker

      This is a little Ruby plugin that simply allows you to quickly tweak the position and orientation of Scene Cameras. When generating animations, SketchUp Scenes are a great way to capture your path through your model but sometimes you don't quite get the Scenes setup right. Scene Tweaker comes to the rescue!

      [flash=600,338:3eo5s7u1]http://www.youtube.com/v/jBT-mNg2Yck[/flash:3eo5s7u1]

      Unzip the 2 files and put them in your plugins folder and restart SketchUp.

      You can start the tool from the Tools menu or the toolbar and it will show all the positions and orientations of your Scene Cameras.

      Shift+MouseClick allows you to dolly the Scene camera

      Cmd+MouseClick allows you to look through the camera and change its orientation (ie where its pointing).

      Adam


      Unzip to your plugsin folder

      posted in Plugins
      AdamBA
      AdamB
    • RE: IES browser in SketchUp

      Here's a quick vimeo video covering working with IES files in LightUp:

      [flash=640,352:1m1gan7b]http://vimeo.com/moogaloop.swf?clip_id=13653813[/flash:1m1gan7b]

      Or YouTube, but they seem to have borked the audio sync..

      posted in Extensions & Applications Discussions
      AdamBA
      AdamB
    • RE: Ruby scripts lack style

      @jessejames said:

      It's insane the amount of poor styles and inconsitancies i see from script to script and EVEN inconsitencies within the same script!

      A self referential example? ๐Ÿ˜ฎ

      "Information-free" comments are a personal bugbear:

      # loop over my_widgets for i in my_widgets

      Utterly pointless. Well written code should read/scan easily. If you have to stop and re-read then it needs teasing out. Classic one is use of negated meaning in the name of variables. eg:

      ` notWriting = true

      unless notWriting
      ...`

      makes you break the flow of reading code. Waste of time and those responsible should be flogged in a public place..or something.

      Adam

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: Strange warning from Face.vertices

      You can guard against not getting what you expect all you like, but once you get this kind of result, the internal structure of SU is toast.

      It always seems to comes down to Ruby coding errors on your part. I believe the issue is that (possibly for performance reasons?) SU isn't at all defensive in its API. You give it a bunch of crap and it dutifully carries on using it resulting in increasingly wrong behaviour.

      So if you ever enumerate winged edge structres etc and get crazy objects, don't guard against it, go back and find your mistake - and it can be a real PITA to find.. ๐Ÿ˜ž

      Adam

      posted in Developers' Forum
      AdamBA
      AdamB
    • IES browser in SketchUp

      Thought you'd like to see the new IES browser built into the LightUp v1.9. It makes finding the right IES file for light sources very easy without ever leaving SketchUp.

      http://i614.photobucket.com/albums/tt229/ElektraGlide/SketchUpScreenSnapz027.png

      posted in Extensions & Applications Discussions extensions
      AdamBA
      AdamB
    • RE: View.line_width limited to 10px?

      Mitering.

      Its pretty fiddly to handle all edge cases so I can understand the SU guys just skipping it because it starts to step outside the bounds of what the View.draw API is about.

      For more info on line mitering in a PostScript sense, see here

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: Sun elevation and azimut

      @pvbuero said:

      @wind-borne said:

      LightUp shows similar to your example. here's example I posted awhile back.
      http://forums.sketchucation.com/viewtopic.php?p=226729#p226729

      Hello,
      I checked Lightup sometimes ago but there were to many functions I don't need and I wasn't able to figure out how I could create a diagramm as it's shown above. I usually don't need rendering software. I only need the solar simulation part ...
      Is there a tutorial somewhere how to do that with Lightup ?

      I will also take a look at open studio...

      Thanks to all of you
      Matthias

      Matthias,

      Its pretty simple to do in LightUp.

      • Set the geo-location and date for your model using SketchUp "Model Info.."
      • Choose "Lux Contours" + "Insolation" in LightUp preferences.
      • Click on Tourtool.

      You can use Apple/Alt + mouse click to take exact readings on any part of your model.

      Adam

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: Apartment

      Pixero,

      You could just export some cubemaps from LightUp at key locations and use GoCubic to create Flash based viewers. Or I use Panoviewer.

      [flash=512,512:228g1z9c]http://www.light-up.co.uk/resources/cubicvr/panoviewer.swf?filePath=http://www.light-up.co.uk/resources/cubicvr/cube1/&prefix=cofla[/flash:228g1z9c]

      posted in Gallery
      AdamBA
      AdamB
    • Open space Lux readings

      Hi,

      I'm looking for some open space lux readings with associated location/date to cross-check a new feature in LightUp. I'm pretty comfortable the calc is correct but I want to compare to realworld readings.

      ie A model located in Boulder,CO at 11.30am in July is showing around 94000 lx whereas the same model in Blackpool,UK gets around 45000 lx.

      Any links and/or data much appreciated.

      Adam

      posted in SketchUp Discussions sketchup
      AdamBA
      AdamB
    • RE: Ruby 1.9 is fast!

      Yes. Late binding allows lots of flexibility.

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: C Extension on OSX crashes SU

      You'll need to add:

      "-arch i386 -arch ppc"

      to CFLAGS and DLDFLAGS

      This will make the Mac compiler build your code for both PowerPC and Intel CPUs.

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: BoundingBox.intersect

      Are you using SU6? I seem to remember the intersect is broken in SU6.

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: C Extension on OSX crashes SU

      @thomthom said:

      I'm confused - are you using the SU Ruby Console or the IRB to test it?

      > require 'mkmf'
      Ohhh - now I see. That bit is what I used to compile the extension.

      TT_Hamster.bundle is the compiled result of that.
      You should only need to
      require "TT_Hamster" - this assumes that TT_Hamster.bundle is in the current working directory.

      You have to link as a flat namespace otherwise it won't work on OSX.

      LDSHARED = cc -dynamic -bundle -undefined suppress -flat_namespace

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: Rendering and Linear Workflow

      @remus said:

      With regards to what it is, my understanding is that you basically work on the image without gamma correction applied and then apply it at the end. Not sure what the benefits are, though, as i've never bothered to look in to it beyond that very basic understanding. I look forward to hearing other peoples thoughts.

      Gamma correction is a very commonly misunderstood process. Lots of people treat as just "brightening up" the image with a different name!

      It is important that Gamma correction happens just once as the pixel colors you've calculated inside your rendering engine are displayed on a monitor. Gamma correction fixes the problem that while in your rendering engine a pixel with value 0.25 is half the brightness of a pixel with value 0.5, on your monitor it won't look like half the brightness.

      So Gamma Correction applies a non-linear function to account for this so that pixel values reflect brightness you see on your monitor.

      On a monitor with perfectly adjust gamma correction, the brightness of a square of pixels with value 0.5 should be the same as a checkerboard of pixels with half 1.0 and half 0.0.
      gamma checking

      The Gamma Correction needed varies from monitor to monitor due to physical differences. However, for TVs (not computer monitors) it standardised on a value of 2.2 For computer monitors is often more around 1.8

      If you adjust your computer gamma while looking at the attached bitmap, when you get to the point that the squares all look the same brightness, you have perfect Gamma Correction.

      posted in Extensions & Applications Discussions
      AdamBA
      AdamB
    • RE: Faces area in a group ?

      @kat said:

      I don't get the
      tangent = (normal * binormal)
      multiplication. Isn't B supposed to be the cross product of N and T?

      Makes no odds. Binormal and tangent both lie in the plane.

      @kat said:

      And why is gives

      @adamb said:

      (xform * binormal).length * (xform * tangent).length

      you the scale factor?

      I'm taking the unit vectors in the plane of the face and transforming them by the Group transform which may scale them. Getting the length in the binormal and tangent direction allows me to figure out how much to scale the area of the face accounting for the transform.

      Adam

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: Optimization Tips

      distance requires a square root of a scalar product. ie sqrt(A.B)

      Keep in mind that in native "cpu" math, A.B is perhaps ~5 cycles and sqrt(X) is perhaps ~35 cycles. If you don't actually need the squareroot but just need to find the closest, then just compare A.B which should be significantly faster.

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: Optimization Tips

      @thomthom said:

      As for C extensions - it appear that there's a significant overhead of converting VALUEs to workable C types - so if you iterate only once over a set of data there isn't much to gain. Only if there's quite a bit more calculations.

      Not really. You asked the wrong question, so you perhaps got an answer that has misled you.

      You asked about converting Ruby arrays to C etc. And everything I said stands. However, sounds like you actually want a C extension that operates upon the Ruby structures. If you have a situation where you are just wanting to twiddle existing Ruby data from C, it is well worth doing even for 1 pass because the fixed costs are pretty much zero.

      posted in Developers' Forum
      AdamBA
      AdamB
    • RE: They say Ruby is slow...

      @martinrinehart said:

      If I remember correctly, compilers started adding constant folding in the '80s. This is truly brain dead.

      Just FYI. Strength Reduction is the transformation that would turn these loops into do_nothing loops. I remember in the late 80's being so impressed with gcc when it would simply remove for (i=0; i<1000; i++); because it has no side-effect.

      posted in Developers' Forum
      AdamBA
      AdamB
    • 1
    • 2
    • 24
    • 25
    • 26
    • 27
    • 28
    • 46
    • 47
    • 26 / 47