Премини към съдържанието
От 1-ви септември 2021 г., вход във форумите ще е възможен само с имейл адрес вместо потребителско име. Ако не помните имейла с който сте се регистрирали, вижте го в настройките на профила си. ×
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

Java създаване с конструктор


Lombert

Препоръчан отговор


Здравейте как мога да създам с конструктор правилен многоъгълник като параметър зададен трябва да е брой на страните, а радиуса е зададен, че е 1 и лежи с централна точка в средата на координатната система.
 

public class Vieleck extends GObjekt {

protected double[] seiten;
 
int xWerte[];int[] yWerte;

 

public Vieleck(int  anzahlN) {
 
super("Vieleck",anzahlN);
int r=1;   //final int radius = 1;
eckpunkte = new Punkt[anzahlN];
seiten = new double[anzahlN];
   float mittelpunktwinkel = 360.0f / anzahlN;
    float startwinkel = -90.0f;
    int hoehe =2*r;
    int breite =2*r;
    int mittelpunktX = 0; //breite/2;
    int mittelpunktY = 0;// hoehe/2;
    int halbseite = (hoehe < breite ? hoehe : breite)/2;
  
    xWerte = new int[anzahlN];
   yWerte = new int[anzahlN];
   for (int i = 0; i < anzahlN; i++){
       double zentralwinkel = i * mittelpunktwinkel;
       double winkel = zentralwinkel + startwinkel;
       double bogen = Math.PI * winkel / 180.0;  
       xWerte =(int)(radius * Math.cos(bogen)) + mittelpunktX;
       yWerte =(int)(radius * Math.sin(bogen)) + mittelpunktY;
   }
seitenBerechnung();
}

}

Линк към коментара
Сподели в други сайтове

Здравейте !

 

Нещо не успявам да схвана въпроса Ви.

В момента както е разписан класа Vieleck, той има конструктор, приемащ броя на страните.

Тъй като искате радиуса за всички многоъгълници да е 1, той може да се дефинира като;

private static final int RADIUS = 1;

което е всъщност Java начина за дефиниране на константи за даден клас. 

Поне в този си вид, класа Ви върши работа. 

Ако е възможно, бихте ли уточнили какво точно Ви притеснява в случая и какво точно се иска;

1) Да се разпишат дефинициите на класовете

2) Графично да се реализира изчертаването на въпросните фигури

3) Да се изгради някаква по - сложна класова йерархия за многоъгълниците

4) Друго

 

Като един съвет, добре е променливите да са записани с английски имена, за да може по-лесно да се проследи логиката на програмата - лично аз не съм учил и не знам немски, но е като добра практика, кода да се пиша на английски.

 

Поздрави !

Линк към коментара
Сподели в други сайтове

Здравейте !

 

Нещо не успявам да схвана въпроса Ви.

В момента както е разписан класа Vieleck, той има конструктор, приемащ броя на страните.

Тъй като искате радиуса за всички многоъгълници да е 1, той може да се дефинира като;

private static final int RADIUS = 1;

което е всъщност Java начина за дефиниране на константи за даден клас. 

Поне в този си вид, класа Ви върши работа. 

Ако е възможно, бихте ли уточнили какво точно Ви притеснява в случая и какво точно се иска;

1) Да се разпишат дефинициите на класовете

2) Графично да се реализира изчертаването на въпросните фигури

3) Да се изгради някаква по - сложна класова йерархия за многоъгълниците

4) Друго

 

Като един съвет, добре е променливите да са записани с английски имена, за да може по-лесно да се проследи логиката на програмата - лично аз не съм учил и не знам немски, но е като добра практика, кода да се пиша на английски.

 

Поздрави !

Да поп принцип е по- добре да е на английски кода, но на немски се изисква от мен. Може ли малко помощ понеже трябва да направя метод за конвексност на многоъгълник. Благодаря много.

Линк към коментара
Сподели в други сайтове

Да поп принцип е по- добре да е на английски кода, но на немски се изисква от мен. Може ли малко помощ понеже трябва да направя метод за конвексност на многоъгълник. Благодаря много.

Предполагам става дума за Convex hull задача ?

Може да погледнете следните няколко ресурса по въпроса:

Algorithm Implementation

Convex Hull In depth

 

Поздрави !

Линк към коментара
Сподели в други сайтове

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

×
×
  • Добави ново...

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите Условия за ползване