[Make 2017] Picking an InputPoint will always result in Z coordinate 0

it would be more useful to see the code…

can you post it?

john

input_point = Sketchup::InputPoint.new
input_point.pick(view, x, y, Sketchup::InputPoint.new)
position = input_point.position

That’s the code we use for getting the position from input_point. This code is called on every OnMouseMove and OnLButtonDown call by a helper class, which also takes care of snapping to our internal data structure.

It may very well be a problem with high DPI support. I am using a Surface 4 with 2736 x 1824 resolution, the default scaling of apps by windows is at 175%. How do I get the scale factor specifically for SketchUp? When googling I only get results for scaling as in Transformation.Scaling…

This problem also occurs on a Mac with 1080p and a Sony Vaio with 1080p.

On windows you right click the icon, open properties and go to the compatibility tab. I don’t know how it’s done on Mac but perhaps it’s somewhat similar.

Ok, then it is at 175%.

I’ve used variants of this many times…

nodlg = UI::WebDialog.new{} 

scale = nodlg.screen_scale_factor

nodlg = nil

scale

john

If you try having it at 100%, does the inputpoint behave as expected then?

Thanks for the method with the WebDialog john.

Using that method, regardless of the Windows scale factor, I get 1.0 as scaling though. The scaling definitely changes visibly.

When at 100% scaling, the behavior doesn’t change.

Known issue. This is why they added a new module method for v2017:

UI::scale_factor()

SketchUp currently only supports display scaling up to 150%.
This fact is on the Hardware and Software Requirements page, under section “High DPI Support”.

I suggest also testing on a normal display with 96/100 dpi.

1 Like

What is the newly created InputPoint passed as an argument used for? I can’t remember on the top of my head but I think a second InputPoint is only needed when you want special inference to that point. Perhaps using an extra InputPoint that hasn’t picked an Entity could be causing inference problems?

The input point argument is for the inference system. I’m actually not sure what you’ll experience when you pass in a brand new input point which haven’t been picked yet…

1 Like

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.