Faits :
A.
Le 6 janvier 2019, B._ a déposé plainte pénale contre inconnu pour viol pour des faits survenus au petit matin du même jour.
Le 8 janvier 2019, le Ministère public de l'arrondissement de l'Est vaudois a ouvert une instruction pénale en raison de ces faits.
Le 25 janvier 2019, A._ a été arrêté, alors que les prélèvements ADN effectués sur le corps de la plaignante avaient permis d'identifier celui-ci comme étant son agresseur. Celui-ci a en substance expliqué avoir eu une relation sexuelle consentie avec la plaignante.
Le 26 janvier 2019, le Tribunal des mesures de contraintes (Tmc) a ordonné la détention provisoire de A._ une première fois pour un mois au maximum, puis, le 25 février, pour trois mois. Cette deuxième décision a été confirmée par le Tribunal cantonal le 13 mars 2019 puis par le Tribunal fédéral (arrêt 1B_177/2019 du 7 mai 2019) qui a reconnu l'existence d'un risque de fuite du prévenu sans que les mesures de substitution proposées puissent le pallier.
B.
Par ordonnance du 14 mai 2019, le Tribunal des mesures de contrainte a ordonné la prolongation de la détention provisoire du prévenu pour deux mois, soit jusqu'au 25 juillet 2019.
Statuant sur recours de l'intéressé, la Chambre des recours pénale du Tribunal cantonal a confirmé cette décision par arrêt du 3 juin 2019.
C.
Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral de réformer l'arrêt cantonal en ce sens qu'il est immédiatement libéré. Subsidiairement, il demande la mise en place des mesures de substitution suivantes en accompagnement de sa libération immédiate: dépôt de toutes ses pièces d'identité, obligation de se présenter régulièrement - soit plusieurs fois par semaine - auprès du poste de gendarmerie de Gland, mise en place d'une surveillance électronique, versement d'une caution de 20'000 francs par sa famille ou toute autre mesure de substitution jugée utile par le Tribunal fédéral. Plus subsidiairement, il conclut à l'annulation de l'arrêt cantonal et au renvoi de la cause pour nouvelle décision dans le sens des considérants.
Le recourant sollicite en outre l'octroi de l'assistance judiciaire.
La cour cantonale et le Ministère public renoncent à se déterminer et se réfèrent aux considérants de l'arrêt attaqué. Le Ministère public précise que le délai de prochaine clôture en vue de la mise en accusation du prévenu est arrivé à échéance le 28 juin 2019 et que la rédaction de l'acte d'accusation "est pour ainsi dire terminée". Dans sa réplique, le recourant indique ne pas avoir d'observations complémentaires à déposer mais précise avoir formulé, dans le délai de prochaine clôture, des réquisitions afin de faire entendre encore deux personnes.
Considérant en droit :
1.
Le recours en matière pénale (art. 78 al. 1 LTF) est ouvert contre les décisions relatives à la détention provisoire ou pour des motifs de sûreté au sens des art. 212 ss CPP. Formé en temps utile (art. 100 al. 1 LTF) contre une décision prise en dernière instance cantonale (art. 80 LTF) et qui touche le recourant dans ses intérêts juridiquement protégés (art. 81 al. 1 let. a et b ch. 1 LTF), le recours en matière pénale est recevable.
2.
2.1. Une mesure de détention provisoire n'est compatible avec la liberté personnelle garantie aux art. 10 al. 2 Cst. et 5 CEDH que si elle repose sur une base légale (art. 31 al. 1 et art. 36 al. 1 Cst.), soit en l'espèce l'art. 221 CPP. Elle doit en outre correspondre à un intérêt public et respecter le principe de la proportionnalité (art. 36 al. 2 et 3 Cst.). Pour que tel soit le cas, la privation de liberté doit être justifiée par un risque de fuite ou par un danger de collusion ou de réitération (art. 221 al. 1 let. a, b et c CPP). Préalablement à ces conditions, il doit exister des charges suffisantes, soit de sérieux soupçons de culpabilité, à l'égard de l'intéressé (art. 221 al. 1 CPP, art. 5 par. 1 let. c CEDH), c'est-à-dire des raisons plausibles de le soupçonner d'avoir commis une infraction.
Conformément à l'art. 221 al. 1 let. a CPP, la détention provisoire peut être ordonnée s'il y a sérieusement lieu de craindre que le prévenu se soustraie à la procédure pénale ou à la sanction prévisible en prenant la fuite. Selon la jurisprudence, le risque de fuite doit s'analyser en fonction d'un ensemble de critères tels que le caractère de l'intéressé, sa moralité, ses ressources, ses liens avec l'Etat qui le poursuit ainsi que ses contacts à l'étranger, qui font apparaître le risque de fuite non seulement possible mais également probable. La gravité de l'infraction ne peut pas, à elle seule, justifier la prolongation de la détention, même si elle permet souvent de présumer un danger de fuite en raison de l'importance de la peine dont le prévenu est menacé (ATF 143 IV 160 consid. 4.3 p.167; 125 I 60 consid. 3a p. 62 et les arrêts cités).
2.2. Compte tenu de ce qu'a retenu le Tribunal fédéral dans l'arrêt 1B_177/2019, le prévenu ne revient pas sur la reconnaissance de forts soupçons au sens de l'art. 221 al. 1 CPP.
Lors du précédent examen du risque de fuite du recourant, le Tribunal fédéral avait constaté que celui-ci entretenait des relations familiales et amicales dans son pays d'origine, le Portugal, que la réalité du travail à plein temps dont il se prévalait était sujette à caution, que la relation avec sa compagne n'était pas décisive et qu'en dépit de l'attachement à sa fille de trois ans dont le recourant se prévalait, celui-ci ne l'avait pas encore reconnue. Au vu de ces éléments, un risque de fuite était bien concret.
Le recourant conteste l'appréciation de la cour cantonale dans la présente procédure s'agissant de l'ampleur de ses attaches au Portugal. Il met en avant l'intensité de ses relations avec sa famille vivant en Suisse (parents et frère). S i l'importance de ses relations avec le Portugal n'est pas clairement établie et ne saurait effectivement découler d'un seul récent séjour en famille (il ne ressort pas de l'arrêt attaqué qu'il y en ait eu d'autres ni, à l'inverse, que celui-ci ait été le seul), il n'en demeure pas moins que de tels liens existent, que le recourant est familier avec ce pays où il est né, dont il est ressortissant et parle la langue, et où il se rend encore à son âge adulte.
Dans la présente procédure, la cour cantonale a retenu que le recourant, à supposer qu'il démontre, à l'aide de pièces jugées irrecevables car produites tardivement, qu'il était au bénéfice d'un contrat de travail lors de sa mise en détention, demeurerait manifestement sans emploi à sa sortie de prison de sorte que cette situation accentuait le risque de fuite. Avec les juges cantonaux, il y a lieu de constater que cet élément est défavorable au recourant. S'il est certes regrettable que le recourant ne soit pas parvenu à établir l'existence d'un travail stable au début de son incarcération, ce fait, révolu, n'est désormais plus de nature à minimiser le risque de fuite.
Quant à la relation que le recourant entretient avec sa compagne, à l'instar de ce que retient la cour cantonale, on ne saurait considérer qu'elle suffit à exclure une volonté de fuir. Quel que soit l'attachement de celle-ci au recourant, il ressort des propres déclarations de ce dernier qu'il a été infidèle par deux fois - indépendantes l'une de l'autre - au moins, ce qui permet de douter du sérieux qu'il accordait, lui, jusqu'à son incarcération, à cette relation.
Enfin, revenant sur son attachement à sa fille, le recourant se contente de faire valoir les nombreuses visites en prison de celle-ci accompagnée de sa mère. Cet élément n'apporte en réalité rien de plus par rapport à ce qui a été constaté dans l'arrêt 1B_177/2019, à savoir que jusqu'à son incarcération, le recourant n'avait jamais entrepris la démarche de reconnaissance de l'enfant, née le 14 juillet 2015.
Ces éléments - liens (mêmes ténus) avec le Portugal, absence de stabilité professionnelle, vie familiale apparemment prise peu au sérieux - pris en considération dans leur ensemble conduisent à confirmer le risque de fuite constaté jusqu'à présent au sens de l'art. 221 CPP.
3.
Le recourant réitère ses propositions de mesures de substitution au sens de l'art. 237 CPP.
Au contraire de ce qu'il affirme, il n'apporte aucun élément nouveau à cet égard, de sorte que la Cour de céans n'a pas de motif de modifier, dans le cadre de la présente procédure, l'appréciation à laquelle elle avait procédé dans son précédent arrêt 1B_177/2019, ce d'autant que, la procédure d'enquête devant être terminée à bref délai, le recourant devrait être jugé rapidement.
Il résulte de ce qui précède que le recours est rejeté.
4.
Les conditions posées à l'art. 64 al. 1 LTF étant réunies, il convient de mettre le recourant au bénéfice de l'assistance judiciaire, de lui désigner Me Julien Gafner comme avocat d'office et d'allouer à celui-ci une indemnité à titre d'honoraires, qui seront supportés par la caisse du tribunal. Il n'est en outre pas perçu de frais judiciaires (art. 64 al. 1 LTF).
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
La demande d'assistance judiciaire est admise; Me Julien Gafner est désigné comme avocat d'office du recourant et une indemnité de 1'500 fr. lui est allouée à titre d'honoraires, à payer par la caisse du Tribunal fédéral. Il n'est pas perçu de frais judiciaires.
3.
Le présent arrêt est communiqué aux mandataires du recourant et de B._, au Ministère public central du canton de Vaud, et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 10 juillet 2019
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Chaix
La Greffière : Sidi-Ali