Jump to content

skyzoframe[hun]

Members
  • Content Count

    79
  • Joined

  • Last visited

Posts posted by skyzoframe[hun]


  1. 45 minutes ago, David Heffernan said:

    Yes but it's hard to see the relevance. Representable numbers have the form k*2^n. Perhaps you don't actually need exact representability. We don't know what your requirements are. 

    Many irrational numbers must be used in 3D space. my problem is that it has to be stored in memory. usually in float value. which causes an error if I work in six axes


  2. 8 minutes ago, Leif Uneus said:

    First of all, precision depends on the hardware. If you have a 6 axis movement, how accurate is the movement of all those axis?

    Secondly, how is the movement controlled? Resolution? Error in the resolution?

    Last in that chain comes the controlling equipment, speed and other things that might concern the precision.

     

    I want to adapt to the maximum software possibilities within the limits of Pascal.  The hardware constans in this case.( One kind of parameter)


  3. Yes , you are right.

    38 minutes ago, programmerdelphi2k said:

    Definitely not!
    because the expected target (function return) is an "Array", so if the array is empty, there is nothing to expect from its "possible" content (the records), and if there is "content", there will be "records" with values!

     


  4. 26 minutes ago, programmerdelphi2k said:

    because the expected target (function return) is an "Array", so if the array is empty, there is nothing to expect from its "possible" content (the records), and if there is "content", there will be "records" with values! 

    I mean, before you put anything into the array, you have to clear the record, then fill the record. If you don't do so, then there are the opportunity to create redundancy.

     


  5. On 5/2/2023 at 7:11 PM, programmerdelphi2k said:

    var LTableIsActive : boolean; LOldSQL : string; LMyRecordWithValues: TMyRecordWithValues

    In these case, maybe you need one more row.

    LMyRecordWithValues := default (TMyRecordWithValues);


  6. The first step is solved, by using the update flag, creating a negative and positive  ID with one trigger when inserting anything into the database. // interbase database // before insert

    AS
    declare variable COUNT_ID INTEGER;declare variable I INTEGER;/**/
    
    begin
     COUNT_ID=0;
     i=0;
     new.TIME_CREATE=Current_TimeStamp;
     
     
    /*
    UPDATE_KEY -> default False!
    */ 
    if (new.UPDATE_KEY=False) then
    begin 
     /*when create*/
     if (not exists( select * from MGR_SZABASZAT where ID>-1)) then
     begin
      new.ID=0;
     end
     else
     begin
      select count(*) from MGR_SZABASZAT where ID>-1 into :COUNT_ID;
      i=:COUNT_ID;
      WHILE (i>0) DO
      begin
       if (not exists (select ID from MGR_SZABASZAT where ID=:i))
       then 
       begin
        new.ID=:i;
        i=0;
       end else i=i-1;
      end /* WHILE (i>0) DO*/
     end /*if (not exists( select * from MGR_SZABASZAT)) then*/
    end
    else
    begin
     /*update*/
      if (not exists( select * from MGR_SZABASZAT where ID<0)) then
     begin
      new.ID=-1;
     end
     else
     begin
      select count(*) from MGR_SZABASZAT where ID<0 into :COUNT_ID;
      i=:COUNT_ID+1;
      i=i*-1;
      WHILE (i<0) DO
      begin
       if (not exists (select ID from MGR_SZABASZAT where ID=:i))
       then 
       begin
        new.ID=:i;
        i=0;
       end else i=i+1;
      end /* WHILE (i<0) DO*/
     end /*if (not exists( select * from MGR_SZABASZAT)) then*/
    end
    end

     

×