~ubuntu-branches/debian/sid/stellarium/sid

« back to all changes in this revision

Viewing changes to src/core/StelSphereGeometry.cpp

  • Committer: Package Import Robot
  • Author(s): Tomasz Buchert
  • Date: 2013-08-04 15:06:55 UTC
  • mfrom: (1.2.12)
  • Revision ID: package-import@ubuntu.com-20130804150655-iji0vb5navh3lk13
Tags: 0.12.2-1
* Imported Upstream version 0.12.2
* Added dependency to phonon (to enable video/sound)
* Fixed VCS links
* Removed unused lintian tag (embedded-library glee)
* Dropped obsolete patch
* Update copyright

Show diffs side-by-side

added added

removed removed

Lines of Context:
463
463
                        ta.b=(texCoords->a+texCoords->b)*0.5;
464
464
                        ta.c=texCoords->c;
465
465
                }
466
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, true, true, false);
 
466
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, true, true, false);
467
467
 
468
468
                //va.a=vertices->a+vertices->b;
469
469
                //va.a.normalize();
476
476
                        ta.b=texCoords->b;
477
477
                        ta.c=texCoords->c;
478
478
                }
479
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, true, false, true);
 
479
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, true, false, true);
480
480
                return;
481
481
        }
482
482
 
492
492
                        ta.b=texCoords->b;
493
493
                        ta.c=(texCoords->b+texCoords->c)*0.5;
494
494
                }
495
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, false, true, true);
 
495
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, false, true, true);
496
496
 
497
497
                va.a=vertices->a;
498
498
                //va.b=vertices->b+vertices->c;
505
505
                        ta.b=(texCoords->b+texCoords->c)*0.5;
506
506
                        ta.c=texCoords->c;
507
507
                }
508
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, true, true, false);
 
508
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, true, true, false);
509
509
                return;
510
510
        }
511
511
 
521
521
                        ta.b=texCoords->b;
522
522
                        ta.c=(texCoords->a+texCoords->c)*0.5;
523
523
                }
524
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, false, true, true);
 
524
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, false, true, true);
525
525
 
526
526
                //va.a=vertices->a+vertices->c;
527
527
                //va.a.normalize();
534
534
                        ta.b=texCoords->b;
535
535
                        ta.c=texCoords->c;
536
536
                }
537
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, true, false, true);
 
537
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, true, false, true);
538
538
                return;
539
539
        }
540
540
 
552
552
                        ta.b=(texCoords->a+texCoords->b)*0.5;
553
553
                        ta.c=(texCoords->b+texCoords->c)*0.5;
554
554
                }
555
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
555
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
556
556
 
557
557
                //va.a=vertices->a+vertices->b;
558
558
                //va.a.normalize();
566
566
                        ta.b=texCoords->b;
567
567
                        ta.c=(texCoords->b+texCoords->c)*0.5;
568
568
                }
569
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
569
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
570
570
 
571
571
                va.a=vertices->a;
572
572
                //va.b=vertices->b+vertices->c;
579
579
                        ta.b=(texCoords->b+texCoords->c)*0.5;
580
580
                        ta.c=texCoords->c;
581
581
                }
582
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, true, true, false);
 
582
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, true, true, false);
583
583
                return;
584
584
        }
585
585
        if (cDiscontinuity1 && !cDiscontinuity2 && cDiscontinuity3)
595
595
                        ta.b=(texCoords->a+texCoords->b)*0.5;
596
596
                        ta.c=(texCoords->a+texCoords->c)*0.5;
597
597
                }
598
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
598
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
599
599
 
600
600
                //va.a=vertices->a+vertices->b;
601
601
                //va.a.normalize();
609
609
                        ta.b=texCoords->c;
610
610
                        ta.c=(texCoords->a+texCoords->c)*0.5;
611
611
                }
612
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
612
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
613
613
 
614
614
 
615
615
                //va.a=vertices->a+vertices->b;
622
622
                        ta.b=texCoords->b;
623
623
                        ta.c=texCoords->c;
624
624
                }
625
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, true, false, true);
 
625
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, true, false, true);
626
626
 
627
627
                return;
628
628
        }
638
638
                        ta.b=texCoords->b;
639
639
                        ta.c=(texCoords->b+texCoords->c)*0.5;
640
640
                }
641
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1, false, true, true);
 
641
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1, false, true, true);
642
642
 
643
643
                //va.a=vertices->b+vertices->c;
644
644
                //va.a.normalize();
652
652
                        ta.b=texCoords->c;
653
653
                        ta.c=(texCoords->a+texCoords->c)*0.5;
654
654
                }
655
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
655
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
656
656
 
657
657
                va.b=va.a;
658
658
                va.a=vertices->a;
666
666
                        ta.b=(texCoords->b+texCoords->c)*0.5;
667
667
                        ta.c=(texCoords->a+texCoords->c)*0.5;
668
668
                }
669
 
                projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
669
                projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
670
670
                return;
671
671
        }
672
672
 
683
683
                ta.b=(texCoords->b+texCoords->c)*0.5;
684
684
                ta.c=(texCoords->a+texCoords->c)*0.5;
685
685
        }
686
 
        projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
686
        projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
687
687
 
688
688
        va.b=va.a;
689
689
        va.a=vertices->a;
697
697
                ta.b=(texCoords->a+texCoords->b)*0.5;
698
698
                ta.c=(texCoords->a+texCoords->c)*0.5;
699
699
        }
700
 
        projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
700
        projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
701
701
 
702
702
        //va.a=vertices->a+vertices->b;
703
703
        //va.a.normalize();
711
711
                ta.b=texCoords->b;
712
712
                ta.c=(texCoords->b+texCoords->c)*0.5;
713
713
        }
714
 
        projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
714
        projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
715
715
 
716
716
        va.a=vertices->a;va.a+=vertices->c;
717
717
        va.a.normalize();
725
725
                ta.b=(texCoords->b+texCoords->c)*0.5;
726
726
                ta.c=texCoords->c;
727
727
        }
728
 
        projectSphericalTriangle(projector, clippingCap, &va, &ta, buffer, maxSqDistortion, nbI+1);
 
728
        projectSphericalTriangle(projector, clippingCap, &va, texCoords ? &ta : 0, buffer, maxSqDistortion, nbI+1);
729
729
 
730
730
        return;
731
731
}
759
759
 
760
760
void SphericalRegion::updateFillVertexBuffer(StelRenderer* renderer, const DrawParams& params, bool handleDiscontinuity)
761
761
{
762
 
        const QVector<Vec3d>& vertices = getOctahedronPolygon().fillVertices();
 
762
        const OctahedronPolygon &octahedron = getOctahedronPolygon();
 
763
        const QVector<Vec3d>& vertices = octahedron.fillVertices();
763
764
        StelProjector* projector = params.projector_;
764
765
 
765
766
        prepareVertexBufferUpdate(&fillPlainVertexBuffer, renderer);