replica nfl jerseysreplica nfl jerseyssoccer jerseyreplica nfl jerseys forums.silverfrost.com :: View topic - Native %pl
forums.silverfrost.com Forum Index forums.silverfrost.com
Welcome to the Silverfrost forums
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Native %pl
Goto page Previous  1, 2, 3 ... 14, 15, 16 ... 26, 27, 28  Next
 
Post new topic   Reply to topic    forums.silverfrost.com Forum Index -> ClearWin+
View previous topic :: View next topic  
Author Message
silicondale



Joined: 15 Mar 2007
Posts: 252
Location: Matlock, Derbyshire, UK

PostPosted: Fri Nov 24, 2017 11:38 am    Post subject: Reply with quote

Surely the default should be that annotation is placed outside the box? Almost always it will interfere (or there is a risk that it will interfere) with data being plotted within the box. When I developed a graphic subsystem (from first principles) in the 1970s and 1980s my users would never have even considered having annotation along axes within the plotting area !
http://www.vmine.net/g-exec/doc/gplot.pdf
Back to top
View user's profile Send private message Visit poster's website
Kenneth_Smith



Joined: 18 May 2012
Posts: 816
Location: Hamilton, Lanarkshire, Scotland.

PostPosted: Fri Nov 24, 2017 12:08 pm    Post subject: Reply with quote

Paul,

Using Dan's code:-

Code:
module surfplot2mod
   use clrwin
   integer (7) ihandleSP2
   real*8 x(2),y(2), xEllipse, yEllipse
   real*8 xAxisMin, xAxisMax, yAxisMin, yAxisMax

CONTAINS
   INTEGER FUNCTION plotSP()
   x(1)=xAxisMin
   x(2)=xAxisMax
   y(1)=yAxisMin
   y(2)=yAxisMax
   call simpleplot_redraw@
   ixR=7; iYr=7
   call get_plot_point@(1d0, 1d0, xEllipse, yEllipse)
   call draw_filled_ellipse@ (nint(xEllipse), nint(yEllipse),ixR,iYr,rgb@(244,0,0) )
   call UPDATE_WINDOW@(ihandleSP2)
   plotSP= 2
   end function plotSP
!......................................................
   INTEGER FUNCTION clearPL()
     CALL simpleplot_redraw@()
     clearPL = 2
   END FUNCTION clearPL
end module surfplot2mod

!.......................
Program SurfPlot2
use surfplot2mod
   xAxisMin =-4
   xAxisMax = 5
   yAxisMin =-4
   yAxisMax = 5
   x(1)=xAxisMin
   x(2)=xAxisMax
   y(1)=yAxisMin
   y(2)=yAxisMax
   i = winio@  ('%ww%nr&')                           
   call winop@ ('%pl[native,x_array,N_GRAPHS=1]')
   call winop@ ('%pl[scale=linear]')
   CALL winop@("%pl[tick_len=9]")
   i = winio@  ('%sf%ts%bf&', 2d0)   
   call winop@ ("%pl[framed,axes_pen=3,width=3,x_axis='Length',y_axis='Width']")
   i = winio@  ('%pv%pl&',800,600,2,x,y)!
   i = winio@  ('%sf%ts%ff&', 1d0)
   i = winio@  ('Set Xmin, Xmax%ta%df%9^rf%df%9^rf%ff&',1d-1,xAxisMin,'+', clearPL, plotSP,  1d0, xAxisMax,'+', clearPL, plotSP)
   i = winio@  ('Set Ymin, Ymax%ta%df%9^rf%df%9^rf%ff&',1d-1,yAxisMin,'+', clearPL, plotSP,  1d0, yAxisMax,'+', clearPL, plotSP)
   i = winio@  ('%cn%^bt[PLOT]%^bt[Clear]%ff&', '+', clearPL, plotSP, clearPL)
   i = winio@  ('%ac[Esc]&', 'exit')
   i = winio@  ('%hw%lw', ihandleSP2, lw_SP2)     
   jj = plotSP()
   end


Use the spinwheel to change ymax, and observe y axis change multiple times for values between 5 and 20.

Ken
Back to top
View user's profile Send private message
Kenneth_Smith



Joined: 18 May 2012
Posts: 816
Location: Hamilton, Lanarkshire, Scotland.

PostPosted: Fri Nov 24, 2017 12:25 pm    Post subject: Reply with quote

Paul,
See also my "Curly Wurly" code posted on Fri Sep 22, 2017 2:25 pm, I think this is the same basic problem. I've just rerun this with 8.2 and the strange effects on both axis scales are still apparent.
Ken
Back to top
View user's profile Send private message
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8214
Location: Salford, UK

PostPosted: Fri Nov 24, 2017 6:13 pm    Post subject: Reply with quote

Ken and Dan

The rogue space has now been located. Thank you.

silicondale

You may be right be don't forget that this development as grown out of the existing SIMPLEPLOT %pl.
Back to top
View user's profile Send private message AIM Address
DanRRight



Joined: 10 Mar 2008
Posts: 2925
Location: South Pole, Antarctica

PostPosted: Sun Dec 10, 2017 1:16 am    Post subject: Reply with quote

Paul
How things go with the optimal numbering? Remember, we discussed that for the LOG scale the numbering has to be in the same style, it has to be either so called "engineering" (10, 100, 1000 or 1e2, 1e3, 1e4...) or "scientific" (10^1, 10^2, 10^4). May be good idea would be to introduce the appropriate WINOP@ key. Here is one example what %pl is doing right now
Back to top
View user's profile Send private message
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8214
Location: Salford, UK

PostPosted: Sun Dec 10, 2017 9:45 am    Post subject: Reply with quote

Dan

I have put the work on %pl to one side for now. Other things appear to be more urgent. He have already fixed some bugs and there is one more bug that I know about that is on the list. Hopefully I will be able to release a new set of DLLs before too long.
Back to top
View user's profile Send private message AIM Address
silicondale



Joined: 15 Mar 2007
Posts: 252
Location: Matlock, Derbyshire, UK

PostPosted: Mon Dec 11, 2017 11:50 am    Post subject: Reply with quote

Hi, John-S -- strange. That link is a simple graphical PDF made by scanning the original printed paper. Shouldn't cause problems even for the latest version of Adobe Reader.
Back to top
View user's profile Send private message Visit poster's website
DanRRight



Joined: 10 Mar 2008
Posts: 2925
Location: South Pole, Antarctica

PostPosted: Fri Dec 15, 2017 9:01 pm    Post subject: Reply with quote

Looks like opposite to other native PL controls like
Code:
      call winop@("%pl[pen_style=0,pen_style=0,pen_style=0,pen_style=0]")
      call winop@("%pl[symbol=0,symbol=11,symbol=8, symbol=7]")

which set the parameters for each of 4 curves, the symbol_size=dval which specifies the size of symbols of curves (if there are few) not for each of them individually, am I right? In other words,
Code:
      CALL winop@("%pl[symbol_size=16.,symbol_size=22.,symbol_size=1.]")

sets symbol_size =1 for all four curves. Also symbol_size=22 seems causing problems (crash)
Back to top
View user's profile Send private message
Kenneth_Smith



Joined: 18 May 2012
Posts: 816
Location: Hamilton, Lanarkshire, Scotland.

PostPosted: Fri Dec 15, 2017 10:07 pm    Post subject: Reply with quote

Dan,

symbol_size is only specified once and applies to all curves with symbols in the plot. Maximum permitted value is 16.

Ken
Back to top
View user's profile Send private message
DanRRight



Joined: 10 Mar 2008
Posts: 2925
Location: South Pole, Antarctica

PostPosted: Fri Dec 15, 2017 11:19 pm    Post subject: Reply with quote

Thanks Ken. Do you agree this is more a defect then a feature?
Back to top
View user's profile Send private message
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8214
Location: Salford, UK

PostPosted: Sat Dec 16, 2017 8:43 am    Post subject: Reply with quote

Dan

You should get a error report if the symbol size is greater than 16.
This limit can easily be increased. How big would you like it?
Back to top
View user's profile Send private message AIM Address
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8214
Location: Salford, UK

PostPosted: Sat Dec 16, 2017 5:54 pm    Post subject: Reply with quote

John

I am sorry that we are not providing the service that you expect. Unfortunately I do not anticipate further improvements to the native %pl in the short to medium term.

The delay from initial release until the release of the personal edition is normally about 2 months but it does depend on whether the initial release has proved to be successful.
Back to top
View user's profile Send private message AIM Address
DanRRight



Joined: 10 Mar 2008
Posts: 2925
Location: South Pole, Antarctica

PostPosted: Sat Dec 16, 2017 8:27 pm    Post subject: Reply with quote

Paul,
Respect to symbol_size. Great that native PL now does not crash the code without diagnostics. That is very appreciated addition. But having restriction based on 16x16 pixel size is decision prone to permanent fixing in the future. It's ok for laptop screen, may be ok for 2k monitors, not enough for 4k and 5k monitors and is not acceptable for 8k.

What size has to be the maximum? I'd not restrict it till integer overflow where warning diagnostics should appear. If this will slow the graphics to total stall then 10x the screen dimensions have to be taken. Why so large? Some people may plot in virtual screens of extremely large dimensions.

Another is making one number for all plots which is fine for for first versions but besides making plotting less flexible is breaking the style of native %pl

Respect to some John's comments. I agree with him that the current shape of native PL needs urgent cosmetic fixing of few last often painful problems. That will take some extreme unsatisfaction with either bugs or missing features off the table. I'd go through this thread, make a list of what was asked for and what was done, reveal such screaming "nails in the shoe" problems, and close this large old thread for good.


Last edited by DanRRight on Sat Dec 16, 2017 10:40 pm; edited 1 time in total
Back to top
View user's profile Send private message
silicondale



Joined: 15 Mar 2007
Posts: 252
Location: Matlock, Derbyshire, UK

PostPosted: Sun Dec 17, 2017 1:23 pm    Post subject: Reply with quote

I'd like to echo John's words - very much appreciate Paul's responsiveness. What other compiler developer has such close and productive interaction with their user base?

Having said that, I also agree about the small proportion of users who actually participate in this forum. However, this is probably quite normal. I have been on the other side of the fence in the past, as an applications system developer supporting a large international user community, of whom fewer than 5% ever took part in any user forums and meetings (this was before the days of the Internet and we had to go globetrotting to meet the users in person).

Specifically on %pl - speaking from personal experience, I found SIMPLEPLOT didn't do everything i needed, and developed my own graphics library using %gr and the Salford primitives such as draw_line_between@. Fortunately made easier by adapting an existing library that I had used before in different software environments. But of course if everyone does that, the same wheels get reinvented many times. That's why I'd really like to see the native %pl expand to something that can replace my (and anyone else's) old clunky code!
Back to top
View user's profile Send private message Visit poster's website
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8214
Location: Salford, UK

PostPosted: Fri Jan 12, 2018 9:25 am    Post subject: Reply with quote

John

The next general release of intermediate DLLs will probably have to wait until the personal edition of FTN95 catches up.
Back to top
View user's profile Send private message AIM Address
Display posts from previous:   
Post new topic   Reply to topic    forums.silverfrost.com Forum Index -> ClearWin+ All times are GMT + 1 Hour
Goto page Previous  1, 2, 3 ... 14, 15, 16 ... 26, 27, 28  Next
Page 15 of 28

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group